Function at 0x41ac1c
Capabilities:
Access peb ldr_data
Check os version

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
mov eax, 0x29b0
call fcn.00526980
mov esi, esp
mov dword [esi + 0x2998], ebp
lea ebx, [esi + 0x29a0]
mov dword [esi + 0x10], ecx
mov dword [esi + 0xc], edx
mov dword [ebx - 4], esp
or dword [ebx + 8], 0xffffffff
mov dword [ebx + 4], 0x5028c0
mov eax, dword fs:[0]
mov dword [ebx], eax
call 0x41ac5e
pop eax
mov dword fs:[0], ebx
mov dword [esi + 0x108], eax
call fcn.004018af
mov ecx, eax
push 0x53be64
call fcn.004ee80b
pop ecx
mov edi, edx
mov edx, eax
lea ecx, [esi + 0x470]
push edi
call fcn.00407ea0
pop eax
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
call fcn.004018af
and dword [ebx + 8], 0
mov ecx, eax
push 0x53be74
call fcn.004ee80b
pop ecx
mov edi, edx
lea ecx, [esi + 0x998]
mov edx, eax
push edi
call fcn.00407ea0
pop eax
lea ecx, [esi + 0x188]
lea eax, [esi + 0x470]
lea edx, [esi + 0x998]
mov dword [ecx], eax
mov eax, fcn.004251d1
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
lea edx, [esi + 0x280]
mov dword [ecx + 0xc], eax
mov dword [edx], str.Extracting
push 2
pop eax
mov dword [edx + 4], eax
and dword [edx + 0x10], 0
mov dword [edx + 8], ecx
lea ecx, [esi + 0x8a0]
mov dword [esi + 0xac], eax
mov dword [edx + 0xc], eax
mov dword [esi + 0x29a8], 1
call fcn.00407795
mov ecx, dword [esi + 0x998]
mov edx, dword [esi + 0x99c]
call fcn.004c9f70
mov ecx, dword [esi + 0x470]
mov edx, dword [esi + 0x474]
call fcn.004c9f70
mov eax, dword [esi + 0x8a0]
mov ecx, dword [esi + 0x8a4]
mov edx, dword [esi + 0x8a8]
mov dword [esi + 0x29a8], 2
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], ecx
call fcn.00408d74
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x30]
call fcn.004c9f70
or dword [esi + 0x29a8], 0xffffffff
mov edx, dword [esi + 0x10]
lea edi, [esi + 0x998]
mov ecx, edi
push dword [esi + 0xc]
call fcn.00401238
pop eax
mov ecx, edi
mov edx, 0x53be84
call fcn.004071bb
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov dword [esi + 0xb0], eax
mov byte [esi + 0x3b], 1
mov dword [esi + 0x29a8], 3
call fcn.00401836
test al, al
jne 0x41ade2
mov byte [esi + 0x3b], 1
lea ecx, [esi + 0x998]
xor edx, edx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004d7d60
pop eax
pop ecx
cmp byte [esi + 0x998], 4
je 0x41ade2
cmp byte [esi + 0x998], 4
jne 0x41f1bc
mov ebx, dword [esi + 0xb0]
lea edi, [esi + 0x998]
mov ecx, edi
mov dword [esi + 0x3c], ebx
mov edx, ebx
push 0
push 0
push 0
push 1
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [edi], eax
je 0x41ae23
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x18], 0
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x9a0]
jmp 0x41ae6d
mov edi, dword [esi + 0x9a0]
mov edx, dword [esi + 0x9a4]
mov ebx, 0
mov eax, edi
mov ecx, edx
sub eax, 0x10015
sbb ecx, ebx
cmovb ecx, ebx
mov ebx, edx
mov dword [esi + 0x2c], ecx
mov ecx, 0
cmovb eax, ecx
mov dword [esi + 0x30], eax
xor eax, eax
inc eax
cmp edi, 0x16
sbb ebx, ecx
mov dword [esi + 0x18], eax
jae 0x41d4a0
mov dword [esi + 0xc], 0x53a9c4
push 0x12
pop eax
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x3c]
mov byte [esi + 0x3b], 0
mov dword [esi + 0x29a8], 3
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
cmp dword [esi + 0x18], 4
jne 0x41f02a
mov edx, dword [esi + 0xc]
mov edi, dword [esi + 0x44]
lea ebx, [esi + 0xf4]
lea ecx, [esi + 0x188]
lea eax, [esi + 0x8a0]
mov dword [ebx - 4], edx
mov dword [ebx], edi
mov edx, dword [edx + 0x38]
mov dword [esi + 0x120], edx
mov edx, 0xdd
lea edi, [ecx + edx]
add edx, eax
mov dword [esi + 0x17c], edi
mov dword [esi + 0x180], edx
push 0x21
pop eax
xor edx, edx
mov dword [esi + 0x44], eax
cmp edx, dword [esi + 0x120]
jae 0x41d473
mov eax, dword [esi + 0xf0]
mov dword [esi + 0xb4], edx
mov edi, dword [eax + 0x34]
cmp dword [eax + 0x38], edx
mov dword [esi + 0x188], 3
mov dword [esi + 0x2c], edi
jbe 0x41dcc8
mov dword [esi + 0x29a8], 4
call fcn.004050c6
mov ebx, dword [esi + 0xb4]
mov eax, dword [esi + 0x2c]
shl ebx, 7
cmp byte [eax + ebx + 0x76], 0
jne 0x41dce1
mov edx, dword [esi + 0xf4]
lea edi, [esi + 0x188]
mov ecx, edi
push dword [eax + ebx + 0x24]
mov dword [esi + 0x20], ebx
push dword [eax + ebx + 0x20]
push 0
push 0
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [esi + 0x188], eax
jne 0x41da5b
mov ecx, edi
lea edx, [esi + 0xf4]
call fcn.00408b85
cmp byte [esi + 0x188], 4
jne 0x41af84
mov eax, dword [esi + 0x18c]
lea edi, [esi + 0x188]
jmp 0x41af9f
mov ecx, dword [esi + 0x188]
mov eax, dword [esi + 0x18c]
lea edi, [esi + 0x188]
cmp cl, 4
jne 0x41eead
cmp eax, 0x4034b50
jne 0x41dced
mov edx, dword [esi + 0xf4]
mov ecx, edi
push 0
push 0x16
push 0
push 2
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [esi + 0x188], eax
jne 0x41da5b
mov ecx, edi
lea edx, [esi + 0xf4]
call fcn.00408b3b
cmp byte [esi + 0x188], 4
jne 0x41aff5
movzx eax, word [esi + 0x18a]
lea ecx, [esi + 0x188]
jmp 0x41b00c
mov eax, dword [esi + 0x188]
lea ecx, [esi + 0x188]
cmp al, 4
jne 0x41eebc
shr eax, 0x10
mov dword [esi + 0xc], eax
lea edx, [esi + 0xf4]
call fcn.00408b3b
cmp byte [esi + 0x188], 4
jne 0x41b02c
movzx edx, word [esi + 0x18a]
jmp 0x41b03e
mov edx, dword [esi + 0x188]
cmp dl, 4
jne 0x41eeca
shr edx, 0x10
mov eax, dword [esi + 0x20]
mov ebx, dword [esi + 0x2c]
movzx edx, dx
lea ecx, [ebx + eax + 0x20]
movzx eax, word [esi + 0xc]
mov edi, dword [ecx + 4]
add eax, dword [ecx]
adc edi, 0
add eax, edx
adc edi, 0
add eax, 0x1e
adc edi, 0
movd xmm1, eax
movd xmm0, edi
punpckldq xmm1, xmm0
movq qword [ecx + 0x10], xmm1
lea ecx, [esi + 0x188]
mov edx, dword [esi + 0xf4]
push edi
push eax
push 0
push 0
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [esi + 0x188], eax
jne 0x41da5b
mov ecx, dword [esi + 0x20]
cmp word [ebx + ecx + 0x68], 5
je 0x41dcd6
cmp byte [ebx + ecx + 0x75], 2
jne 0x41dca2
lea eax, [ebx + ecx]
mov edx, dword [ebx + ecx + 0x10]
mov ebx, dword [eax + 0x14]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], edx
push 0x114
lea eax, [esi + 0x998]
push eax
lea eax, [esi + 0x4f4]
push eax
mov edi, ecx
call fcn.00527800
add esp, 0xc
lea eax, [esi + 0xf4]
mov byte [esi + 0x608], 0
mov dword [esi + 0x610], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x614], 0x53a810
mov dword [esi + 0x61c], ebx
mov dword [esi + 0x618], eax
push 0xb8
lea ebx, [esi + 0x280]
push ebx
lea eax, [esi + 0x620]
push eax
call fcn.00527800
add esp, 0xc
mov eax, dword [esi + 0x8a4]
mov dword [esi + 0x6dc], eax
mov eax, dword [esi + 0x8a0]
mov dword [esi + 0x6d8], eax
push 2
pop eax
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x470], eax
mov edx, ebx
mov dword [esi + 0x474], ecx
mov ecx, dword [esi + 0x2c]
mov dword [esi + 0x4f0], eax
mov eax, dword [ecx + edi + 0x3c]
mov dword [esi + 0x10], eax
mov eax, dword [ecx + edi + 0x40]
and dword [esi + 0x280], 0
xor ecx, ecx
mov dword [esi + 0x29a8], 5
mov dword [esi + 0x30], eax
call fcn.00406c56
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x20]
mov ebx, dword [esi + 0x30]
inc dword [esi + 0xb4]
xor edi, edi
lea eax, [eax + ecx + 0x3c]
mov ecx, dword [esi + 0x10]
mov dword [esi + 0xc], ebx
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x280]
mov dword [esi + 0x99c], ecx
mov dword [esi + 0x9a0], ebx
and dword [esi + 0x9a4], 0
mov dword [esi + 0x9a8], ebx
and dword [esi + 0x998], 0
mov dword [esi + 0x9ac], edx
mov edx, ebx
mov dword [esi + 0x9b0], eax
mov eax, dword [esi + 0x9ac]
mov dword [esi + 0x10], ecx
mov dword [esi + 0x30], edx
mov dword [esi + 0x2c], eax
mov ebx, edx
sub ebx, edi
jb 0x41b2d1
cmp edx, dword [esi + 0xc]
ja 0x41b2d1
lea edx, [ecx + edi]
mov cl, byte [esi + eax + 0x9af]
cmp ebx, 7
ja 0x41b21a
mov dword [esi + 0x20], edi
xor eax, eax
xor edi, edi
cmp ebx, edi
je 0x41b233
cmp byte [edx + edi], cl
je 0x41b22e
inc edi
jmp 0x41b20e
movzx ecx, cl
push ebx
call fcn.00430af0
pop ecx
mov ebx, edx
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
jmp 0x41b23c
xor eax, eax
mov ebx, edi
inc eax
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x30]
mov edi, dword [esi + 0x20]
cmp eax, 1
mov eax, dword [esi + 0x2c]
jne 0x41b2d1
lea edi, [ebx + edi + 1]
mov ebx, edi
mov dword [esi + 0x9a4], edi
sub ebx, eax
jb 0x41b1e5
cmp edi, dword [esi + 0xc]
ja 0x41b1e5
mov edx, eax
mov dword [esi + 0x29a8], 5
xor ecx, ecx
push 0x5b93a4
push 4
lea eax, [esi + 0x9b0]
push eax
mov dword [esi + 0x80], ebx
call fcn.00463c35
add esp, 0xc
mov ecx, dword [esi + 0x2c]
mov edi, dword [esi + 0x80]
mov ebx, dword [esi + 0x1c]
cmp ecx, edx
mov edx, ecx
mov ecx, dword [esi + 0x10]
jne 0x41b2b1
add ecx, edi
push edx
push eax
push ecx
call fcn.00527ee0
add esp, 0xc
test eax, eax
je 0x41bb71
mov eax, dword [esi + 0x9a0]
mov ecx, dword [esi + 0x99c]
mov edi, dword [esi + 0x9a4]
mov edx, dword [esi + 0x9a8]
mov dword [esi + 0xc], eax
jmp 0x41b1d6
mov eax, dword [esi + 0x1c]
mov ecx, dword [eax]
mov edi, dword [eax + 4]
mov dword [esi + 0x29a8], 5
mov dword [esi + 0xc], ecx
mov ecx, edi
xor edx, edx
mov dword [esi + 0x80], edi
call fcn.00463bb4
mov dword [esi + 0xc4], eax
push dword [esi + 0x80]
push dword [esi + 0xc]
mov dword [esi + 0x74], edx
push edx
call fcn.00527800
add esp, 0xc
mov dword [esi + 0x29a8], 6
lea ecx, [esi + 0x8a0]
push 0x2f
pop edx
call fcn.00501ff2
mov dword [esi + 0x29a8], 0xa
lea ecx, [esi + 0x188]
push 0x5c
pop edx
call fcn.00501ff2
mov eax, dword [esi + 0x18c]
mov ecx, dword [esi + 0x190]
mov ebx, dword [esi + 0x8a8]
and dword [esi + 0x280], 0
mov dword [esi + 0x284], 1
and dword [esi + 0x288], 0
mov edi, dword [esi + 0x8a4]
mov edx, dword [esi + 0x74]
mov dword [esi + 0x29a8], 0xb
mov dword [esi + 0x88], ecx
mov dword [esi + 0xc0], eax
lea ecx, [esi + 0x998]
push ebx
mov dword [esi + 0xc8], edi
push edi
push dword [esi + 0x80]
call fcn.00430cb0
add esp, 0xc
mov edx, dword [esi + 0x9d4]
mov eax, dword [esi + 0x9b0]
mov ecx, dword [esi + 0x9a4]
mov ebx, edx
mov dword [esi + 0xe4], eax
mov edi, ecx
mov dword [esi + 0xcc], ecx
mov byte [esi + 0x1c], cl
mov dword [esi + 0x30], edx
sub ebx, eax
mov eax, dword [esi + 0x88]
and edi, 0xffffff00
mov dword [esi + 0xec], edi
mov dword [esi + 0x184], ebx
add eax, dword [esi + 0xc0]
mov dword [esi + 0x88], eax
mov eax, ecx
mov eax, dword [esi + 0x998]
mov dword [esi + 0xd0], eax
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0x9a0]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x9a8]
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0x9b4]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x9bc]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x9c8]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x9cc]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x9d0]
mov dword [esi + 0x2c], eax
mov eax, edx
lea eax, [edx - 1]
mov dword [esi + 0x48], eax
xor eax, eax
cmp dword [esi + 0xd0], 0
mov dword [esi + 0x64], eax
je 0x41b635
movzx eax, byte [esi + 0x1c]
mov ecx, dword [esi + 0x34]
or eax, dword [esi + 0xec]
mov edi, ecx
mov dword [esi + 0x84], ecx
mov dword [esi + 0x90], eax
mov eax, dword [esi + 0x58]
mov edx, edi
mov dword [esi + 0xe8], edi
cmp eax, edi
cmova edx, eax
cmp ecx, 0xffffffff
mov ecx, dword [esi + 0x10]
cmove edx, eax
mov eax, 0
cmove edi, eax
mov dword [esi + 0x28], edx
mov eax, dword [esi + 0x48]
mov dword [esi + 0x10], ecx
add eax, ecx
cmp eax, dword [esi + 0xc]
jae 0x41b750
mov edx, dword [esi + 0x20]
mov cl, byte [edx + eax]
xor eax, eax
xor ebx, ebx
inc ebx
shld eax, ebx, cl
shl ebx, cl
test cl, 0x20
mov ecx, 0
cmovne eax, ebx
cmovne ebx, ecx
and eax, dword [esi + 0x90]
and ebx, dword [esi + 0x150]
or ebx, eax
je 0x41b584
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x28]
lea ebx, [edx + eax]
cmp ecx, dword [esi + 0x30]
jae 0x41b529
mov eax, ecx
mov ecx, dword [esi + 0x10]
add ecx, eax
cmp ecx, dword [esi + 0xc]
jae 0x41d41a
mov edx, dword [esi + 0x2c]
lea ecx, [eax + 1]
mov dl, byte [edx + eax]
cmp dl, byte [ebx + eax]
je 0x41b4f1
mov ecx, dword [esi + 0x10]
sub ecx, dword [esi + 0x58]
cmp dword [esi + 0x34], 0xffffffff
lea ecx, [ecx + eax + 1]
je 0x41b4a5
jmp 0x41b5b5
mov ecx, dword [esi + 0x58]
cmp edi, ecx
jae 0x41b5cc
dec ecx
cmp ecx, dword [esi + 0x30]
jae 0x41d437
mov eax, dword [esi + 0x10]
add eax, ecx
cmp eax, dword [esi + 0xc]
jae 0x41d454
mov edx, dword [esi + 0x2c]
mov bl, byte [edx + ecx]
mov edx, dword [esi + 0x20]
cmp bl, byte [edx + eax]
je 0x41b52c
mov ecx, dword [esi + 0x10]
add ecx, dword [esi + 0xe4]
cmp dword [esi + 0x34], 0xffffffff
je 0x41b4a5
mov edi, dword [esi + 0x184]
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x84], edi
jmp 0x41b481
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x34]
mov edx, dword [esi + 0x84]
mov edi, dword [esi + 0xe8]
mov ebx, 0
add eax, dword [esi + 0x30]
cmp ecx, 0xffffffff
cmovne edx, ebx
cmovne edi, ebx
mov dword [esi + 0x84], edx
mov dword [esi + 0x10], eax
jmp 0x41b481
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x84], 0
xor edi, edi
jmp 0x41b481
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x10]
cmp dword [esi + 0x34], 0xffffffff
mov edx, dword [esi + 0x84]
mov dword [esi + 0x29a8], 0xb
lea edi, [ecx + eax]
mov eax, 0
cmovne edx, eax
mov eax, ecx
mov dword [esi + 0x28], edi
mov ecx, edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x34], edx
mov ecx, dword [esi + 0x74]
mov edx, dword [esi + 0x64]
add eax, ecx
add edx, ecx
lea ecx, [esi + 0x280]
push eax
call fcn.00500f92
pop eax
mov edx, dword [esi + 0xc0]
lea ecx, [esi + 0x280]
push dword [esi + 0x88]
call fcn.00500f92
pop eax
mov eax, dword [esi + 0x28]
jmp 0x41b456
test dword [esi + 0xcc], 0xff0000
jne 0x41b750
mov ebx, dword [esi + 0x7c]
mov eax, dword [esi + 0xc]
test ebx, ebx
je 0x41b66a
mov eax, dword [esi + 0xc]
sub eax, ebx
jbe 0x41b664
mov ecx, dword [esi + 0x20]
cmp byte [ecx + ebx], 0xbf
jg 0x41b66a
jmp 0x41d8ab
jne 0x41d8ab
test eax, eax
je 0x41b711
mov ecx, dword [esi + 0x20]
mov dl, byte [ecx + ebx]
movzx eax, dl
test dl, dl
js 0x41b683
mov edx, ebx
jmp 0x41b6d5
movzx edi, byte [ecx + ebx + 1]
and eax, 0x1f
and edi, 0x3f
cmp dl, 0xdf
jbe 0x41b6c4
mov dword [esi + 0x7c], ebx
movzx ebx, byte [ecx + ebx + 2]
shl edi, 6
and ebx, 0x3f
or ebx, edi
cmp dl, 0xf0
jb 0x41b6cd
mov edi, dword [esi + 0x7c]
and eax, 7
shl ebx, 6
shl eax, 0x12
movzx ecx, byte [ecx + edi + 3]
mov edx, edi
and ecx, 0x3f
or ecx, ebx
or eax, ecx
jmp 0x41b6d5
shl eax, 6
mov edx, ebx
or eax, edi
jmp 0x41b6d5
mov edx, dword [esi + 0x7c]
shl eax, 0xc
or eax, ebx
mov cl, byte [esi + 0x1c]
test cl, cl
jne 0x41b733
cmp eax, 0x110000
je 0x41b750
cmp eax, 0x80
mov ecx, 1
jb 0x41b704
cmp eax, 0x800
push 2
pop ecx
jb 0x41b704
cmp eax, 0x10000
push 4
pop ecx
sbb ecx, 0
add edx, ecx
mov byte [esi + 0x1c], 1
mov ebx, edx
jmp 0x41b648
cmp byte [esi + 0x1c], 0
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x29a8], 0xb
je 0x41b750
mov eax, dword [esi + 0x7c]
xor byte [esi + 0x1c], 1
mov dword [esi + 0x28], eax
jmp 0x41b5fe
xor cl, 1
mov eax, edx
mov dword [esi + 0x29a8], 0xb
mov dword [esi + 0x28], edx
mov dword [esi + 0x7c], edx
mov byte [esi + 0x1c], cl
jmp 0x41b5fe
mov eax, dword [esi + 0x74]
mov edi, dword [esi + 0x80]
mov edx, dword [esi + 0x64]
mov dword [esi + 0x29a8], 0xb
lea ecx, [esi + 0x280]
add edi, eax
add edx, eax
push edi
call fcn.00500f92
pop eax
mov eax, dword [esi + 0x280]
mov ecx, dword [esi + 0x188]
mov edx, dword [esi + 0xc0]
mov ebx, dword [esi + 0x284]
mov edi, dword [esi + 0x288]
mov dword [esi + 0x1c], eax
call fcn.00459070
mov ecx, dword [esi + 0x8a0]
mov edx, dword [esi + 0xc8]
call fcn.00459070
mov dword [esi + 0x29a8], 7
lea ecx, [esi + 0x998]
mov dword [esi + 0x20], ebx
mov edx, ebx
push edi
call fcn.004db0e0
pop eax
movsd xmm1, qword [esi + 0x9a8]
movq xmm0, qword [esi + 0x9b0]
movsd xmm2, qword [esi + 0x998]
xor eax, eax
lea ecx, [esi + 0x188]
mov byte [esi + 0x10], 1
mov dword [esi + 0x2c], 0
mov dword [esi + 0xc], 0
inc eax
mov dword [esi + 0x30], eax
movsd qword [esi + 0x290], xmm1
movq xmm1, qword [esi + 0x9a0]
movq qword [esi + 0x298], xmm0
movsd qword [esi + 0x280], xmm2
movq qword [esi + 0x288], xmm1
lea edx, [esi + 0x280]
mov byte [esi + 0x8f], 1
mov dword [esi + 0x29a8], 8
call fcn.004d2420
mov al, byte [esi + 0x188]
lea ecx, [esi + 0x9b0]
cmp al, 0xa
je 0x41b97d
mov edi, dword [esi + 0x30]
cmp al, 9
jne 0x41b92b
mov eax, dword [esi + 0x2c]
lea edx, [esi + 0x189]
mov dword [esi + 0x29a8], 9
movq xmm0, qword [edx + 0x10]
movsd xmm2, qword [edx]
movq xmm1, qword [edx + 8]
mov dword [esi + 0x998], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x99c], edi
mov dword [esi + 0x9a0], eax
mov al, byte [esi + 0x10]
mov byte [esi + 0x9a4], al
mov al, byte [esi + 0x382]
mov byte [ecx - 9], al
movzx eax, word [esi + 0x380]
mov word [ecx - 0xb], ax
mov eax, dword [edx + 0x17]
mov byte [esi + 0x9a8], 9
movq qword [ecx + 1], xmm1
movsd qword [ecx - 7], xmm2
mov dword [ecx + 0x10], eax
movq qword [ecx + 9], xmm0
lea ecx, [esi + 0x998]
mov eax, dword [esi + 0x9b0]
mov edx, dword [esi + 0x9ac]
push eax
call fcn.004d7080
pop eax
lea ecx, [esi + 0x9b0]
mov edx, dword [esi + 0x998]
mov edi, dword [esi + 0x99c]
movzx eax, word [ecx - 0xb]
mov word [esi + 0x8a0], ax
mov eax, dword [esi + 0x9a0]
mov dword [esi + 0xc], eax
mov ah, byte [ecx - 9]
mov cl, byte [esi + 0x9a4]
mov byte [esi + 0x10], cl
lea ecx, [esi + 0x188]
mov byte [esi + 0x8a2], ah
jmp 0x41b94e
mov al, byte [esi + 0x382]
movzx ecx, word [esi + 0x380]
mov edx, dword [esi + 0x2c]
mov word [esi + 0x8a0], cx
mov byte [esi + 0x8a2], al
lea ecx, [esi + 0x188]
mov dword [esi + 0x2c], edx
mov al, byte [esi + 0x8a2]
movzx edx, word [esi + 0x8a0]
mov dword [esi + 0x30], edi
mov dword [esi + 0x29a8], 8
mov byte [esi + 0x382], al
mov word [esi + 0x380], dx
jmp 0x41b828
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
call fcn.00459070
mov ecx, dword [esi + 0xc4]
mov edx, dword [esi + 0x74]
call fcn.00459070
mov edx, dword [esi + 0x30]
mov byte [esi + 0x6f], 1
mov dword [esi + 0x29a8], 0xc
lea ecx, [esi + 0x998]
push dword [esi + 0xc]
call fcn.004e4ab0
pop eax
mov ecx, dword [esi + 0x998]
mov edx, dword [esi + 0x99c]
mov edi, dword [esi + 0x9a0]
call fcn.004be7cb
test edi, edi
jne 0x41ba02
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x30]
call fcn.004c9f70
lea ecx, [esi + 0x470]
mov dword [esi + 0x29a8], 4
call fcn.00404880
mov edx, dword [esi + 0xb4]
lea ecx, [esi + 0x188]
jmp 0x41aed6
mov ebx, dword [ebp + 0xc]
mov edi, 1
test ebx, ebx
je 0x41ba2d
js 0x41f403
mov al, byte [0x5dc8e8]
xor edx, edx
mov ecx, ebx
inc edx
call fcn.00420530
mov edi, eax
test eax, eax
je 0x41f3f0
push ebx
push dword [ebp + 8]
push edi
call fcn.00527800
add esp, 0xc
mov edx, dword [esi + 0x30]
mov dword [esi + 0xd4], ebx
mov dword [esi + 0xd8], edi
mov dword [esi + 0xdc], ebx
mov byte [esi + 0xe0], 0
mov dword [esi + 0x29a8], 0x20
lea ecx, [esi + 0xd4]
push dword [esi + 0xc]
call fcn.004d7080
pop eax
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x30]
call fcn.004c9f70
cmp dword [esi + 0x470], 2
lea eax, [esi + 0x470]
jne 0x41ba8f
mov eax, dword [esi + 0x474]
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x40]
push 0x2f
call fcn.004576cb
pop ecx
test al, al
je 0x41badc
mov edx, dword [esi + 0xd8]
mov eax, dword [esi + 0xdc]
mov dword [esi + 0x29a8], 0xd
lea ecx, [esi + 0x998]
mov dword [esi + 0xc], edx
push eax
call fcn.0050111d
pop eax
cmp byte [esi + 0x998], 4
jne 0x41bb98
mov edx, dword [esi + 0xc]
jmp 0x41d3d3
mov ecx, dword [esi + 0xd8]
mov edx, dword [esi + 0xdc]
mov dword [esi + 0x29a8], 0xd
mov dword [esi + 0xc], ecx
mov dword [esi + 0x10], edx
call fcn.004d8680
test eax, eax
je 0x41bb40
mov ecx, eax
mov dword [esi + 0x20], eax
mov dword [esi + 0x1c], edx
call fcn.00401836
mov ebx, dword [esi + 0x1c]
mov edi, dword [esi + 0x20]
test al, al
jne 0x41bb40
xor edx, edx
lea ecx, [esi + 0x998]
inc edx
push ebx
push edi
call fcn.004d7d60
pop eax
pop ecx
cmp byte [esi + 0x998], 4
je 0x41bb40
cmp byte [esi + 0x998], 4
jne 0x41f505
mov edx, dword [esi + 0xc]
lea ecx, [esi + 0x998]
push dword [esi + 0x10]
call fcn.0050112f
pop eax
cmp byte [esi + 0x998], 4
jne 0x41bbad
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x18]
and eax, 0xffffff00
or eax, 4
jmp 0x41bbbc
mov ecx, dword [ebx]
test edi, edi
mov dword [esi + 0xc], ecx
je 0x41d3f8
mov edx, dword [ebx + 4]
cmp edx, edi
jbe 0x41d3ff
cmp byte [ecx + edi], 0xbf
jg 0x41b2e6
jmp 0x41d405
cmp byte [esi + 0x998], 4
mov edx, dword [esi + 0xc]
je 0x41d3d3
jmp 0x41f505
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
mov dword [esi + 0xc], ecx
mov edx, dword [esi + 0x104]
cmp al, 4
mov dword [esi + 0x18], eax
jne 0x41d9e6
and dword [esi + 0x10c], 0
lea eax, [esi + 0x124]
mov dword [esi + 0x104], edx
and dword [eax], 0
mov dword [esi + 0x29a8], 0xe
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x124]
lea edx, [esi + 0x998]
mov dword [esi + 0x24], eax
push 0x2000
call fcn.005011a4
pop ecx
push edx
push 0
push eax
call fcn.00527d80
add esp, 0xc
mov ecx, dword [esi + 0x10c]
mov eax, dword [esi + 0xc]
mov edi, 0x2000
mov edx, 0x2000
mov dword [esi + 0x124], edi
mov dword [esi + 0x24], eax
mov dword [esi + 0x88], ecx
push edi
lea eax, [esi + 0x998]
push eax
call fcn.00501173
pop ecx
pop edi
mov dword [esi + 0x1c], eax
mov dword [esi + 0x10], edx
mov eax, dword [esi + 0x4f0]
cmp eax, 2
jne 0x41bd66
push 0xd8
lea eax, [esi + 0x608]
push eax
lea edi, [esi + 0x280]
push edi
call fcn.00527800
add esp, 0xc
mov eax, dword [esi + 0xc]
mov byte [esi + 0x608], 3
lea ecx, [esi + 0x6e0]
mov edx, edi
mov dword [esi + 0x24], eax
push 0x5b9764
call fcn.005019d1
pop eax
cmp dword [esi + 0x470], 2
lea eax, [esi + 0x470]
jne 0x41bcac
mov eax, dword [esi + 0x474]
cmp byte [esi + 0x6e0], 2
movzx ecx, word [eax + 0x68]
sete dh
cmp byte [esi + 0x6e1], 0
setne dl
cmp ecx, 4
ja 0x41ee68
mov ecx, dword [ecx*4 + 0x420070]
mov eax, dword [eax + 0x6c]
and dh, dl
mov byte [esi + 0x20], dh
add ecx, dword [esi + 0x108]
mov dword [esi + 0x34], eax
jmp ecx
add eax, 0xfffffffe
cmp eax, 6
push 3
pop ecx
cmovae eax, ecx
mov eax, dword [eax*4 + 0x420098]
add eax, dword [esi + 0x108]
jmp eax
mov ecx, dword [esi + 0xd4]
call fcn.004c9f70
lea ecx, [esi + 0x470]
mov dword [esi + 0x29a8], 4
call fcn.00404880
jmp 0x41b9f1
xor edi, edi
jmp 0x41b2e6
je 0x41b2e6
push 0x5b9834
push edi
push 0
call fcn.005365b0
add esp, 0xc
jmp 0x41f742
mov edx, dword [esi + 0xc]
mov dword [esi + 0x29a8], 0xb
push 0x5b8f64
call fcn.00535ff0
pop eax
jmp 0x41f742
mov edx, dword [esi + 0x30]
mov dword [esi + 0x29a8], 0xb
push 0x5b8f44
call fcn.00535ff0
pop eax
jmp 0x41f742
mov edx, dword [esi + 0xc]
mov dword [esi + 0x29a8], 0xb
mov ecx, eax
push 0x5b8f54
call fcn.00535ff0
pop eax
jmp 0x41f742
lea ecx, [esi + 0xf0]
mov byte [esi + 0x3b], 0
mov dword [esi + 0x29a8], 3
call fcn.0040647d
mov eax, dword [esi + 0x29a0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x2b
pop eax
add edi, 0xffffffea
mov dword [esi + 0x20], eax
adc edx, 0xffffffff
push 0x24
pop eax
lea ebx, [esi + 0x998]
mov dword [esi + 0x44], eax
cmp edi, dword [esi + 0x30]
mov eax, edx
sbb eax, dword [esi + 0x2c]
jb 0x41d547
mov eax, edx
mov edx, dword [esi + 0xb0]
mov ecx, ebx
mov dword [esi + 0xc], eax
push eax
push edi
push 0
push 0
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [esi + 0x998], eax
jne 0x41d553
mov ecx, ebx
lea edx, [esi + 0x3c]
mov dword [esi + 0x10], edi
mov dword [esi + 0x29a8], 0x21
call fcn.00408b85
cmp byte [esi + 0x998], 4
mov edi, dword [esi + 0x10]
jne 0x41d516
mov eax, dword [esi + 0x99c]
jmp 0x41d52b
mov ecx, dword [esi + 0x998]
mov eax, dword [esi + 0x99c]
cmp cl, 4
jne 0x41d5d7
mov edx, dword [esi + 0xc]
lea ebx, [esi + 0x998]
cmp eax, 0x6054b50
je 0x41d571
sub edi, 1
sbb edx, 0
jae 0x41d4b8
mov dword [esi + 0xc], str.Could_not_find_central_directory_endInvalid_zip_headerInvalid_digital_signature_headerCould_not_find_ZIP64_central_directory_endInvalid_zip64_locator_digital_signature_header
jmp 0x41ae70
mov eax, dword [esi + 0x99c]
mov ecx, dword [esi + 0x9a0]
mov dword [esi + 0x29a8], 3
mov dword [esi + 0xc], eax
mov dword [esi + 0x44], ecx
jmp 0x41d5cb
mov ebx, dword [esi + 0xb0]
lea edi, [esi + 0x998]
mov ecx, edi
mov edx, ebx
push 0
push 0x10
push 0
push 2
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [edi], eax
jne 0x41d5b9
lea edi, [esi + 0x998]
mov edx, ebx
mov ecx, edi
push dword [esi + 0xc]
push dword [esi + 0x10]
push 0
push 0
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [edi], eax
je 0x41d5e6
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x9a0]
mov dword [esi + 0x44], eax
mov dword [esi + 0x18], 0
jmp 0x41ae70
mov dword [esi + 0xc], ecx
mov dword [esi + 0x18], 0
jmp 0x41ae6d
lea ecx, [esi + 0x998]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [esi + 0x10], edx
lea edx, [esi + 0x3c]
mov dword [esi + 0x30], eax
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41d611
mov eax, dword [esi + 0x99c]
jmp 0x41d626
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
mov dword [esi + 0xc], eax
cmp al, 4
mov eax, ecx
jne 0x41d5c8
cmp eax, 0x6054b50
jne 0x41d64d
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41d65b
movzx eax, word [esi + 0x99a]
jmp 0x41d66c
mov dword [esi + 0xc], 0x53a9d6
push 0x20
jmp 0x41ae6c
mov eax, dword [esi + 0x998]
cmp al, 4
jne 0x41d729
shr eax, 0x10
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov word [esi + 0x2c], ax
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41d690
movzx eax, word [esi + 0x99a]
jmp 0x41d6a1
mov eax, dword [esi + 0x998]
cmp al, 4
jne 0x41d729
shr eax, 0x10
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov word [esi + 0x50], ax
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41d6c5
movzx eax, word [esi + 0x99a]
jmp 0x41d6d2
mov eax, dword [esi + 0x998]
cmp al, 4
jne 0x41d729
shr eax, 0x10
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov word [esi + 0x1c], ax
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41d6f6
movzx eax, word [esi + 0x99a]
jmp 0x41d703
mov eax, dword [esi + 0x998]
cmp al, 4
jne 0x41d729
shr eax, 0x10
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov word [esi + 0x34], ax
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41d737
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x44], eax
jmp 0x41d751
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x99c]
jmp 0x41d5c8
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0x44], ecx
mov dword [esi + 0xc], eax
jne 0x41d5cb
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41d770
mov ecx, dword [esi + 0x99c]
jmp 0x41d787
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0xc], eax
jne 0x41d56c
mov dword [esi + 0x28], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41d7aa
movzx eax, word [esi + 0x99a]
jmp 0x41d7c1
mov eax, dword [esi + 0x998]
cmp al, 4
mov dword [esi + 0xc], eax
jne 0x41d72c
mov eax, dword [esi + 0xc]
shr eax, 0x10
xor edx, edx
movzx ecx, ax
mov word [esi + 0x90], ax
inc edx
mov dword [esi + 0xc], ecx
call fcn.004262c7
mov dword [esi + 0x58], eax
mov dword [esi + 0x18], edx
mov dword [esi + 0x29a8], 0x2e
push dword [esi + 0xc]
push dword [esi + 0x18]
lea eax, [esi + 0x3c]
push eax
lea eax, [esi + 0x998]
push eax
call fcn.00401603
add esp, 0x10
cmp byte [esi + 0x998], 4
jne 0x41d80d
mov edx, dword [esi + 0x58]
jmp 0x41d819
cmp byte [esi + 0x998], 4
mov edx, dword [esi + 0x58]
jne 0x41d88a
cmp edx, 0x80000000
je 0x41ae70
mov eax, dword [esi + 0x18]
lea ecx, [esi + 0x8a0]
movzx edi, word [esi + 0x2c]
movzx ebx, word [esi + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x44]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
movzx eax, word [esi + 0x1c]
mov word [ecx + 0x14], di
mov word [ecx + 0x16], bx
mov word [ecx + 0x18], ax
movzx eax, word [esi + 0x34]
mov word [ecx + 0x1a], ax
call fcn.00401994
mov ecx, eax
cmp di, bx
push 2
pop eax
mov dword [esi + 0x18], eax
mov dword [esi + 0xc], 0x53a8e3
je 0x41d8cf
test cl, cl
jne 0x41d8cf
push 0x2f
pop edi
jmp 0x41f475
mov ecx, dword [esi + 0x99c]
mov eax, dword [esi + 0x998]
mov dword [esi + 0x44], ecx
mov ecx, edx
mov edx, dword [esi + 0x18]
mov dword [esi + 0xc], eax
call fcn.004c9f70
jmp 0x41d5cb
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0xc]
mov dword [esi + 0x29a8], 0xb
push 0x5b9394
push edx
push ebx
call fcn.005365b0
add esp, 0xc
jmp 0x41f742
movzx eax, word [esi + 0x90]
xor ebx, ebx
mov byte [esi + 0x34], cl
dec ebx
push 0xffffffffffffffd6
pop edi
mov edx, dword [esi + 0xb0]
sub edi, eax
lea ecx, [esi + 0x998]
sbb ebx, 0
push ebx
push edi
push 0
push 1
call fcn.004d6aa0
add esp, 0x10
lea ecx, [esi + 0x998]
mov byte [esi + 0x14], 0
mov dword [esi + 0x29a8], 0x22
mov eax, dword [ecx]
mov dword [esi + 0x50], eax
call fcn.0040646c
cmp dword [esi + 0x50], 0
je 0x41da2e
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x10]
cmp eax, dword [esi + 0x44]
sbb ecx, 0
jb 0x41d970
mov ecx, dword [esi + 0x30]
mov eax, dword [esi + 0x10]
mov dword [esi + 0x99c], 0x53a8bb
mov dword [esi + 0x9a0], 0x28
mov dword [esi + 0x998], 1
sub ecx, dword [esi + 0x44]
sbb eax, 0
cmp ecx, dword [esi + 0x28]
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x10], eax
sbb eax, 0
jae 0x41da7c
mov dword [esi + 0xc], 0x53a8bb
push 0x28
pop edi
xor eax, eax
inc eax
mov dword [esi + 0x18], eax
jmp 0x41f475
mov ecx, dword [esi + 0xd4]
mov edx, dword [esi + 0xd8]
call fcn.004c9f70
lea ecx, [esi + 0x470]
mov dword [esi + 0x29a8], 4
call fcn.00404880
mov dword [esi + 0x10], 0x80000000
jmp 0x41eefa
lea ecx, [esi + 0x470]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b85
cmp byte [esi + 0x470], 4
jne 0x41dbea
mov eax, dword [esi + 0x474]
mov dword [esi + 0x50], eax
jmp 0x41dc01
mov eax, dword [esi + 0x18c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x190]
mov dword [esi + 0x44], eax
mov dword [esi + 0xac], 0
jmp 0x41eee0
lea ecx, [esi + 0x998]
mov byte [esi + 0x14], 0
call fcn.004050c6
mov eax, dword [esi + 0x2c]
mov edx, dword [esi + 0x10]
movzx ecx, word [esi + 0x1c]
sub eax, dword [esi + 0x28]
mov dword [esi + 0x50], ecx
sbb edx, 0
mov dword [esi + 0x34], eax
mov dword [esi + 0x58], edx
mov eax, dword [esi + 0x50]
xor ecx, ecx
cmp eax, dword [esi + 0x30]
cmovbe ecx, eax
mov dword [esi + 0xc], ecx
test ecx, ecx
push 8
pop eax
je 0x41dae1
cmp dword [esi + 0xc], 0xffffff
ja 0x41f707
mov edi, dword [esi + 0xc]
shl edi, 7
js 0x41f712
mov ecx, edi
call fcn.0040781e
test eax, eax
je 0x41f71d
mov ecx, dword [esi + 0xc]
mov byte [esi + 0x55], 1
mov dword [esi + 0x29a8], 0x23
mov dword [esi + 0xd4], ecx
mov dword [esi + 0xd8], eax
and dword [esi + 0xdc], 0
call fcn.004e8d90
test eax, eax
je 0x41f6e0
mov edx, dword [eax]
mov ecx, dword [eax + 0xc]
mov dword [esi + 0x30], ecx
mov ecx, edx
mov dword [esi + 0x1c], edx
mov edx, dword [eax + 8]
add ecx, 1
mov dword [eax], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 0x28], edx
mov edx, dword [esi + 0xc]
mov dword [esi + 0x90], ecx
adc ecx, 0
mov dword [eax + 4], ecx
lea ecx, [esi + 0x998]
mov byte [esi + 0x55], 1
call fcn.00408c63
lea edi, [esi + 0x998]
mov ecx, dword [esi + 0x90]
mov eax, dword [esi + 0x1c]
mov edx, dword [esi + 0x28]
movq xmm0, qword [edi]
movq xmm1, qword [edi + 8]
movq qword [esi + 0x190], xmm1
movq qword [esi + 0x188], xmm0
mov dword [esi + 0x19c], ecx
mov ecx, dword [esi + 0x30]
mov dword [esi + 0x198], eax
mov dword [esi + 0x1a0], edx
mov edx, dword [esi + 0xb0]
mov dword [esi + 0x1a4], ecx
mov ecx, edi
push dword [esi + 0x10]
push dword [esi + 0x2c]
push 0
push 0
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [edi], eax
je 0x41dd05
lea ecx, [esi + 0x998]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
mov dword [esi + 0x29a8], 0x24
call fcn.0040646c
xor eax, eax
mov dword [esi + 0xc], 0x53a962
inc eax
mov dword [esi + 0x18], eax
push 0x2c
pop eax
mov dword [esi + 0x1c], eax
jmp 0x41f44e
mov eax, dword [esi + 0x470]
mov ecx, dword [esi + 0x474]
cmp al, 4
mov dword [esi + 0x50], ecx
jne 0x41ee19
cmp dword [esi + 0x50], 0x7064b50
jne 0x41dc37
lea ecx, [esi + 0x470]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b85
cmp byte [esi + 0x470], 4
jne 0x41edd8
mov eax, dword [esi + 0x474]
mov dword [esi + 0x50], eax
jmp 0x41edeb
xor eax, eax
lea ecx, [esi + 0x99c]
mov byte [esi + 0x14], 0
inc eax
mov dword [ecx], eax
mov dword [ecx + 4], 0x53aa20
mov dword [ecx + 8], 0x2e
mov dword [ecx - 4], eax
call fcn.004050c6
jmp 0x41d926
push 0x2b
pop edx
mov ecx, str.called__Result::unwrap____on_an__Err__value
push 0x53a990
push 0x53aac8
lea eax, [esi + 0x280]
push eax
call fcn.00536370
add esp, 0xc
jmp 0x41f742
push 3
pop eax
mov dword [esi + 0xac], eax
jmp 0x41eee0
mov dword [esi + 0xc], 0x5b968c
push 0x20
jmp 0x41dcff
mov dword [esi + 0xc], 0x53a941
jmp 0x41eee0
xor eax, eax
mov dword [esi + 0xc], str.Invalid_local_file_headerInvalid_Central_Directory_headerArchive_header_is_too_largeAES_encryption_without_AES_extra_data_fieldInvalid_central_directory_size_or_offsetSupport_for_multi_disk_files_is_not_implementedFile_cannot_contain_ZIP64_central_directory_endPassword_required_to_decrypt_fileCould_not_seek_to_start_of_central_directory
inc eax
mov dword [esi + 0xac], eax
push 0x19
pop eax
jmp 0x41eedd
lea ecx, [esi + 0x998]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
mov dword [esi + 0x29a8], 0x24
call fcn.0040646c
xor eax, eax
inc eax
mov dword [esi + 0x18], eax
push 0x20
pop eax
mov dword [esi + 0x1c], eax
push 2
pop eax
mov dword [esi + 0xc8], eax
push 0x2e
pop eax
mov dword [esi + 0xc4], eax
mov dword [esi + 0xbc], 0
mov dword [esi + 0x7c], 0
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x50]
jae 0x41f1ed
mov edx, dword [esi + 0x3c]
lea ecx, [esi + 0x998]
push 0
push 0
push 0
push 2
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [esi + 0x998], eax
jne 0x41f2b8
mov ecx, dword [esi + 0x9a4]
mov eax, dword [esi + 0x9a0]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
mov dword [esi + 0x29a8], 0x24
mov dword [esi + 0xc0], ecx
lea ecx, [esi + 0x998]
mov dword [esi + 0x74], eax
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41ddca
mov eax, dword [esi + 0x99c]
jmp 0x41dde2
mov ecx, dword [esi + 0x998]
mov eax, dword [esi + 0x99c]
cmp cl, 4
mov dword [esi + 0xc], ecx
jne 0x41f3e4
cmp eax, 0x2014b50
jne 0x41f2d6
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41de18
movzx eax, word [esi + 0x99a]
mov dword [esi + 0xc], eax
jmp 0x41de2d
mov eax, dword [esi + 0x998]
cmp al, 4
mov dword [esi + 0xc], eax
jne 0x41f1b1
shr dword [esi + 0xc], 0x10
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
je 0x41de59
cmp byte [esi + 0x998], 4
jne 0x41f1a8
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41de84
movzx eax, word [esi + 0x99a]
mov dword [esi + 0x30], eax
jmp 0x41de9a
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0x30], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41dec5
movzx eax, word [esi + 0x99a]
mov dword [esi + 0x28], eax
jmp 0x41dedb
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0x28], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41df09
movzx eax, word [esi + 0x99a]
mov dword [esi + 0x88], eax
jmp 0x41df22
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0x88], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41df50
movzx eax, word [esi + 0x99a]
mov dword [esi + 0xd0], eax
jmp 0x41df69
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0xd0], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41df96
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x84], eax
jmp 0x41dfb0
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0x84], ecx
jne 0x41f411
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41dfdd
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x80], eax
jmp 0x41dff7
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0x80], ecx
jne 0x41f419
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41e024
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xb8], eax
jmp 0x41e03e
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0xb8], ecx
jne 0x41f421
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41e069
movzx eax, word [esi + 0x99a]
mov dword [esi + 0x10], eax
jmp 0x41e07f
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0x10], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41e0aa
movzx eax, word [esi + 0x99a]
mov dword [esi + 0x48], eax
jmp 0x41e0c0
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0x48], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
jne 0x41e0eb
movzx eax, word [esi + 0x99a]
mov dword [esi + 0x64], eax
jmp 0x41e101
mov eax, dword [esi + 0x998]
mov ecx, eax
cmp al, 4
jne 0x41f0b7
shr ecx, 0x10
mov dword [esi + 0x64], ecx
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
je 0x41e12d
cmp byte [esi + 0x998], 4
jne 0x41f1a8
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b3b
cmp byte [esi + 0x998], 4
je 0x41e159
cmp byte [esi + 0x998], 4
jne 0x41f1a8
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41e186
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xe8], eax
jmp 0x41e1a0
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0xe8], ecx
jne 0x41f429
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41e1cd
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xe4], eax
jmp 0x41e1e7
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0xe4], ecx
jne 0x41f431
movzx ecx, word [esi + 0x10]
xor edx, edx
mov byte [esi + 0x15], 0
mov byte [esi + 0x16], 1
inc edx
mov dword [esi + 0x90], ecx
call fcn.004262c7
mov dword [esi + 0xb4], eax
mov dword [esi + 0x2c], edx
mov byte [esi + 0x6a], 0
mov dword [esi + 0x29a8], 0x28
push dword [esi + 0x90]
push dword [esi + 0x2c]
lea eax, [esi + 0x3c]
push eax
lea eax, [esi + 0x998]
push eax
call fcn.00401603
add esp, 0x10
cmp byte [esi + 0x998], 4
je 0x41e24a
cmp byte [esi + 0x998], 4
jne 0x41f498
movzx ecx, word [esi + 0x48]
xor edx, edx
mov byte [esi + 0x6a], 0
inc edx
mov dword [esi + 0x10], ecx
call fcn.004262c7
mov dword [esi + 0xec], eax
mov dword [esi + 0x150], edx
mov byte [esi + 0x6b], 1
mov dword [esi + 0x29a8], 0x29
push dword [esi + 0x10]
push dword [esi + 0x150]
lea eax, [esi + 0x3c]
push eax
lea eax, [esi + 0x998]
push eax
call fcn.00401603
add esp, 0x10
cmp byte [esi + 0x998], 4
je 0x41e2a9
cmp byte [esi + 0x998], 4
jne 0x41f4b6
movzx ecx, word [esi + 0x64]
xor edx, edx
mov byte [esi + 0x6b], 1
inc edx
mov dword [esi + 0x64], ecx
call fcn.004262c7
mov dword [esi + 0xcc], eax
mov dword [esi + 0x48], edx
mov al, 1
mov dword [esi + 0x29a8], 0x2a
mov byte [esi + 0x4e], al
mov byte [esi + 0x4f], al
push dword [esi + 0x64]
push dword [esi + 0x48]
lea eax, [esi + 0x3c]
push eax
lea eax, [esi + 0x998]
push eax
call fcn.00401603
add esp, 0x10
cmp byte [esi + 0x998], 4
je 0x41e306
cmp byte [esi + 0x998], 4
jne 0x41f4d4
bt dword [esi + 0x30], 0xb
jb 0x41e398
mov edx, dword [esi + 0x2c]
mov al, 1
lea ecx, [esi + 0x998]
mov byte [esi + 0x4e], al
mov byte [esi + 0x4f], al
push dword [esi + 0x90]
call fcn.004a0548
pop eax
mov al, 1
lea ecx, [esi + 0x168]
lea edx, [esi + 0x998]
mov byte [esi + 0x4e], al
mov byte [esi + 0x4f], al
call fcn.00501d9d
mov eax, dword [esi + 0xcc]
lea ecx, [esi + 0x128]
lea edx, [esi + 0x998]
mov byte [esi + 0x6e], 1
mov dword [esi + 0x29a8], 0x2b
mov dword [esi + 0x998], eax
mov eax, dword [esi + 0x48]
mov dword [esi + 0x99c], eax
mov eax, dword [esi + 0x64]
mov dword [esi + 0x9a0], eax
xor eax, eax
mov byte [esi + 0x6c], al
mov byte [esi + 0x6d], al
call fcn.00501d9d
mov dword [esi + 0x64], 0
jmp 0x41e418
mov edx, dword [esi + 0x2c]
mov al, 1
lea ecx, [esi + 0x998]
mov byte [esi + 0x4e], al
mov byte [esi + 0x4f], al
push dword [esi + 0x90]
call fcn.00420c50
pop eax
mov al, 1
lea ecx, [esi + 0x168]
lea edx, [esi + 0x998]
mov byte [esi + 0x4e], al
mov byte [esi + 0x4f], al
call fcn.004ca2c2
mov edx, dword [esi + 0x48]
mov al, 1
mov byte [esi + 0x6d], 0
mov dword [esi + 0x29a8], 0x2b
lea ecx, [esi + 0x998]
mov byte [esi + 0x6c], al
mov byte [esi + 0x6e], al
push dword [esi + 0x64]
call fcn.00420c50
pop eax
mov al, 1
lea ecx, [esi + 0x128]
lea edx, [esi + 0x998]
mov byte [esi + 0x6d], 0
mov byte [esi + 0x6c], al
mov byte [esi + 0x6e], al
call fcn.004ca2c2
mov al, 1
mov dword [esi + 0x64], eax
mov edx, dword [esi + 0xc]
mov cl, 4
cmp dh, 3
sete al
sub cl, al
test dh, dh
mov edx, 0
movzx eax, cl
cmove eax, edx
cmp word [esi + 0x28], 0x63
je 0x41e469
movzx edx, word [esi + 0x28]
cmp edx, 8
je 0x41e458
cmp edx, 0xc
je 0x41e463
cmp edx, 0x5d
je 0x41e45d
mov cx, 5
test edx, edx
jne 0x41e46d
xor ecx, ecx
jmp 0x41e46d
xor ecx, ecx
inc ecx
jmp 0x41e46d
mov cx, 4
jmp 0x41e46d
mov cx, 2
jmp 0x41e46d
mov cx, 3
mov edx, dword [esi + 0x170]
lea edi, [esi + 0x9a8]
movq xmm0, qword [esi + 0x168]
movq xmm1, qword [esi + 0x128]
inc dword [esi + 0x7c]
and dword [esi + 0x7bc], 0
and dword [esi + 0x7b8], 0
mov dword [edi + 0x30], edx
mov edx, dword [esi + 0x130]
movq qword [edi + 0x28], xmm0
movq qword [edi + 0x4c], xmm1
mov dword [edi + 0x54], edx
mov byte [esi + 0xa11], al
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 0x30]
mov edi, dword [esi + 0xd0]
mov dword [esi + 0xc], 0
mov byte [esi + 0xa12], al
mov eax, edx
mov ebx, edi
and al, 1
shr ebx, 5
mov byte [esi + 0xa0e], al
mov eax, edx
mov edx, dword [esi + 0x88]
and ebx, 0xf
shr al, 3
shl ebx, 0x10
and al, 1
mov byte [esi + 0xa0f], al
mov eax, dword [esi + 0x28]
mov word [esi + 0xa00], cx
mov word [esi + 0xa02], ax
movzx eax, dx
shr edx, 5
and dword [esi + 0x998], 0
mov ecx, eax
and edx, 0x3f
add cl, al
shl edx, 8
shr eax, 0xb
and cl, 0x3e
movzx ecx, cl
shl ecx, 0x10
or edx, ecx
movzx ecx, di
and edi, 0x1f
shr ecx, 9
or edx, eax
shl edi, 0x18
mov dword [esi + 0x9a4], edx
or ebx, edi
add ecx, 0x7bc
mov edx, dword [esi + 0x84]
or ebx, ecx
mov ecx, dword [esi + 0x80]
mov dword [esi + 0x9a0], ebx
mov dword [esi + 0xa04], edx
mov edx, dword [esi + 0xb8]
and dword [esi + 0x9ac], 0
mov dword [esi + 0x9a8], ecx
mov ecx, dword [esi + 0xb4]
and dword [esi + 0x9b4], 0
mov dword [esi + 0x9b0], edx
mov edx, dword [esi + 0x2c]
mov dword [esi + 0x9dc], ecx
mov ecx, dword [esi + 0x90]
mov dword [esi + 0x9e0], edx
mov edx, dword [esi + 0xec]
mov dword [esi + 0x9e4], ecx
mov ecx, dword [esi + 0x150]
mov dword [esi + 0x9e8], edx
mov edx, dword [esi + 0x10]
mov dword [esi + 0x9ec], ecx
mov ecx, dword [esi + 0xe4]
mov dword [esi + 0x9f0], edx
mov edx, dword [esi + 0xc0]
and dword [esi + 0x9bc], 0
mov dword [esi + 0x9b8], ecx
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x9c4], edx
mov edx, dword [esi + 0xe8]
mov dword [esi + 0x9c0], ecx
and dword [esi + 0x9cc], 0
and dword [esi + 0x9c8], 0
lea ecx, [esi + 0x9e8]
mov dword [esi + 0x7c0], ecx
mov dword [esi + 0xa08], edx
mov byte [esi + 0xa10], 0
mov byte [esi + 0xa0d], 2
mov eax, dword [esi + 0xc]
cmp dword [esi + 0x10], eax
jbe 0x41ea6c
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
mov dword [esi + 0x29a8], 0x2c
call fcn.0050203b
cmp byte [esi + 0x380], 4
jne 0x41e65d
movzx eax, word [esi + 0x382]
mov dword [esi + 0xc], eax
jmp 0x41e673
mov eax, dword [esi + 0x380]
mov ecx, eax
cmp al, 4
jne 0x41e9df
shr ecx, 0x10
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
call fcn.0050203b
cmp byte [esi + 0x380], 4
jne 0x41e699
movzx eax, word [esi + 0x382]
mov dword [esi + 0x10], eax
jmp 0x41e6af
mov eax, dword [esi + 0x380]
mov ecx, eax
cmp al, 4
jne 0x41e9df
shr ecx, 0x10
mov dword [esi + 0x10], ecx
cmp word [esi + 0xc], 1
je 0x41e6fd
movzx eax, word [esi + 0xc]
cmp eax, 0x9901
jne 0x41e761
cmp word [esi + 0x10], 7
jne 0x41f180
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
call fcn.0050203b
cmp byte [esi + 0x380], 4
jne 0x41e846
movzx eax, word [esi + 0x382]
mov dword [esi + 0xc], eax
jmp 0x41e85c
mov eax, dword [esi + 0x9b0]
not eax
or eax, dword [esi + 0x9b4]
jne 0x41e774
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
mov byte [esi + 0xa10], 1
call fcn.005020b4
cmp dword [esi + 0x380], 0
jne 0x41ea27
movzx edx, word [esi + 0x10]
mov ecx, dword [esi + 0x38c]
mov eax, dword [esi + 0x388]
mov dword [esi + 0x9b4], ecx
add edx, 0xfffffff8
mov ecx, 0
mov dword [esi + 0x9b0], eax
adc ecx, 0xffffffff
mov dword [esi + 0xc], edx
mov dword [esi + 0x10], ecx
jmp 0x41e782
movzx eax, word [esi + 0x10]
mov dword [esi + 0x10], 0
mov dword [esi + 0xc], eax
jmp 0x41e825
movzx eax, word [esi + 0x10]
mov dword [esi + 0x10], 0
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x9a8]
not eax
or eax, dword [esi + 0x9ac]
jne 0x41e7d7
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
mov byte [esi + 0xa10], 1
call fcn.005020b4
cmp dword [esi + 0x380], 0
jne 0x41ea27
add dword [esi + 0xc], 0xfffffff8
mov eax, dword [esi + 0x388]
mov ecx, dword [esi + 0x38c]
adc dword [esi + 0x10], 0xffffffff
mov dword [esi + 0x9ac], ecx
mov dword [esi + 0x9a8], eax
mov eax, dword [esi + 0x9b8]
not eax
or eax, dword [esi + 0x9bc]
jne 0x41e825
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
call fcn.005020b4
cmp dword [esi + 0x380], 0
jne 0x41ea27
add dword [esi + 0xc], 0xfffffff8
mov eax, dword [esi + 0x388]
mov ecx, dword [esi + 0x38c]
adc dword [esi + 0x10], 0xffffffff
mov dword [esi + 0x9bc], ecx
mov dword [esi + 0x9b8], eax
mov eax, dword [esi + 0xc]
neg eax
mov eax, 0
sbb eax, dword [esi + 0x10]
jl 0x41e9a5
mov eax, dword [esi + 0x7b8]
mov dword [esi + 0xc], eax
jmp 0x41e9d1
mov eax, dword [esi + 0x380]
mov ecx, eax
cmp al, 4
jne 0x41e9df
shr ecx, 0x10
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
call fcn.0050203b
cmp byte [esi + 0x380], 4
jne 0x41e882
movzx eax, word [esi + 0x382]
mov dword [esi + 0x10], eax
jmp 0x41e898
mov eax, dword [esi + 0x380]
mov ecx, eax
cmp al, 4
jne 0x41e9df
shr ecx, 0x10
mov dword [esi + 0x10], ecx
mov byte [esi + 0x110], 0
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
push 1
lea eax, [esi + 0x110]
push eax
call fcn.00501d16
pop eax
pop ecx
cmp byte [esi + 0x380], 4
je 0x41e8d2
mov eax, dword [esi + 0x380]
cmp al, 4
jne 0x41ea48
mov al, byte [esi + 0x110]
lea ecx, [esi + 0x380]
lea edx, [esi + 0x7b8]
mov byte [esi + 0x28], al
call fcn.0050203b
cmp byte [esi + 0x380], 4
jne 0x41e8fe
movzx eax, word [esi + 0x382]
jmp 0x41e90f
mov eax, dword [esi + 0x380]
cmp al, 4
jne 0x41ea48
shr eax, 0x10
cmp word [esi + 0x10], 0x4541
jne 0x41f18c
cmp word [esi + 0xc], 1
je 0x41e933
movzx ecx, word [esi + 0xc]
cmp ecx, 2
jne 0x41f2e2
mov cl, 1
jmp 0x41e935
xor ecx, ecx
mov dh, byte [esi + 0x28]
dec dh
cmp dh, 2
ja 0x41f19a
cmp ax, 0x63
mov byte [esi + 0xa0c], dh
mov dl, dh
mov byte [esi + 0xa0d], cl
je 0x41e986
movzx edx, ax
cmp edx, 8
je 0x41e975
cmp edx, 0xc
je 0x41e980
cmp edx, 0x5d
je 0x41e97a
mov cx, 5
test edx, edx
jne 0x41e98a
xor ecx, ecx
jmp 0x41e98a
xor ecx, ecx
inc ecx
jmp 0x41e98a
mov cx, 4
jmp 0x41e98a
mov cx, 2
jmp 0x41e98a
mov cx, 3
mov word [esi + 0xa00], cx
mov word [esi + 0xa02], ax
mov dword [esi + 0x10], 0
push 7
pop eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
add eax, dword [esi + 0x7b8]
adc ecx, dword [esi + 0x7bc]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ecx
jb 0x41e9fa
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x7b8], eax
mov dword [esi + 0x7bc], ecx
mov eax, dword [esi + 0x9f0]
mov dword [esi + 0x10], eax
jmp 0x41e621
mov eax, dword [esi + 0x384]
and dword [esi + 0x6e0], 0
mov dword [esi + 0x6e4], ecx
mov dword [esi + 0x6e8], eax
jmp 0x41ea61
mov eax, dword [esi + 0x120]
and dword [esi + 0x6e0], 0
and eax, 0xffffff00
or eax, 2
mov dword [esi + 0x6e4], eax
mov dword [esi + 0x120], eax
mov dword [esi + 0x6e8], 0x5b91ac
jmp 0x41ea61
mov eax, dword [esi + 0x384]
mov ecx, dword [esi + 0x388]
and dword [esi + 0x6e0], 0
mov dword [esi + 0x6e8], ecx
mov dword [esi + 0x6e4], eax
jmp 0x41ea61
mov ecx, dword [esi + 0x384]
and dword [esi + 0x6e0], 0
mov dword [esi + 0x6e4], eax
mov dword [esi + 0x6e8], ecx
lea ecx, [esi + 0x6e0]
call fcn.004050c6
cmp word [esi + 0xa00], 3
jne 0x41ea83
cmp byte [esi + 0xa0d], 2
je 0x41f371
mov eax, dword [esi + 0x9b8]
mov ecx, dword [esi + 0x9bc]
mov dword [esi + 0x384], 0x53a875
mov dword [esi + 0x388], 0x1b
mov dword [esi + 0x380], 1
add eax, dword [esi + 0x34]
adc ecx, dword [esi + 0x58]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ecx
jb 0x41f388
lea ecx, [esi + 0x380]
mov dword [esi + 0x29a8], 0x2c
call fcn.004050c6
mov eax, dword [esi + 0xc]
mov dword [esi + 0x9b8], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x9bc], eax
mov eax, dword [esi + 0x99c]
mov edi, dword [esi + 0x998]
mov ebx, dword [esi + 0x9a4]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x9a0]
mov dword [esi + 0xc], eax
push 0x70
lea eax, [esi + 0x9a8]
push eax
lea eax, [esi + 0x280]
push eax
call fcn.00527800
add esp, 0xc
bt dword [esi + 0x30], 0xb
jae 0x41eb31
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0x48]
call fcn.004c9f70
cmp edi, 2
je 0x41f39a
push 0x70
lea eax, [esi + 0x280]
push eax
lea eax, [esi + 0x480]
push eax
call fcn.00527800
add esp, 0xc
mov eax, dword [esi + 0x10]
mov dword [esi + 0x470], edi
mov byte [esi + 0x7b], 1
mov dword [esi + 0x29a8], 0x25
lea ecx, [esi + 0x998]
mov dword [esi + 0x474], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x478], eax
mov dword [esi + 0x47c], ebx
mov eax, dword [esi + 0x4b0]
mov edx, dword [esi + 0x4ac]
push eax
call fcn.00421350
pop eax
mov edi, dword [esi + 0x9a0]
mov ecx, dword [esi + 0x198]
mov edx, dword [esi + 0x19c]
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x2c], edi
push edi
mov dword [esi + 0x30], eax
push eax
push dword [esi + 0x1a4]
push dword [esi + 0x1a0]
call fcn.004a6bb8
add esp, 0x10
cmp dword [esi + 0x190], 0
mov dword [esi + 0x48], eax
jne 0x41ebf2
lea ecx, [esi + 0x188]
lea edx, [esi + 0x198]
mov dword [esi + 0x29a8], 0x27
call fcn.005359c0
mov eax, dword [esi + 0x188]
mov edi, dword [esi + 0x18c]
mov dword [esi + 0x64], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x48]
mov dword [esi + 0x10], edi
and edi, eax
shr eax, 0x19
movd xmm0, eax
mov dword [esi + 0x48], eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movdqa xmmword [esi + 0x150], xmm0
mov eax, dword [esi + 0xc]
movdqa xmm0, xmmword [esi + 0x150]
movdqu xmm1, xmmword [eax + edi]
pcmpeqb xmm0, xmm1
movdqa xmmword [esi + 0x90], xmm1
pmovmskb eax, xmm0
mov word [esi + 0x280], ax
lea ecx, [esi + 0x280]
call fcn.00408b20
test eax, eax
je 0x41ec93
add edx, edi
mov ebx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
and edx, dword [esi + 0x10]
shl edx, 4
sub ebx, edx
mov edx, dword [esi + 0x2c]
push dword [ebx - 8]
push dword [ebx - 0xc]
call fcn.004a6d37
pop ecx
pop edx
test al, al
je 0x41ec5e
jmp 0x41ecea
cmp dword [esi + 0x28], 1
mov eax, 1
mov dword [esi + 0x28], eax
je 0x41ecb9
mov ecx, dword [esi + 0x10]
movdqa xmm0, xmmword [esi + 0x90]
mov edx, edi
call fcn.00408d36
mov dword [esi + 0x28], eax
mov dword [esi + 0x74], edx
movdqa xmm1, xmmword [esi + 0x90]
pcmpeqd xmm0, xmm0
pcmpeqb xmm1, xmm0
pmovmskb eax, xmm1
test eax, eax
jne 0x41ed60
mov eax, dword [esi + 0x64]
lea edi, [eax + edi + 0x10]
add eax, 0x10
and edi, dword [esi + 0x10]
mov dword [esi + 0x64], eax
jmp 0x41ec37
mov eax, dword [esi + 0xbc]
mov edx, dword [esi + 0x30]
mov dword [ebx - 4], eax
mov ecx, dword [esi + 0x998]
call fcn.004c9f70
mov eax, dword [esi + 0xdc]
cmp eax, dword [esi + 0xd4]
mov edx, eax
jne 0x41ed2c
lea ecx, [esi + 0xd4]
mov dword [esi + 0x29a8], 0x26
call fcn.00407834
mov edx, dword [esi + 0xdc]
mov eax, edx
mov edi, edx
shl eax, 7
add eax, dword [esi + 0xd8]
push 0x80
lea ecx, [esi + 0x470]
push ecx
push eax
call fcn.00527800
add esp, 0xc
inc edi
mov dword [esi + 0xbc], edi
mov dword [esi + 0xdc], edi
jmp 0x41dd51
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x74]
mov al, byte [eax + ecx]
test al, al
js 0x41ed81
mov ecx, dword [esi + 0xc]
movdqa xmm0, xmmword [ecx]
pmovmskb eax, xmm0
bsf eax, eax
mov dword [esi + 0x74], eax
mov al, byte [ecx + eax]
mov edi, dword [esi + 0x74]
mov ecx, dword [esi + 0x10]
and al, 1
mov edx, dword [esi + 0xc]
movzx eax, al
sub dword [esi + 0x190], eax
lea eax, [edi - 0x10]
and ecx, eax
mov eax, dword [esi + 0x48]
mov byte [edx + edi], al
mov byte [ecx + edx + 0x10], al
shl edi, 4
mov eax, edx
inc dword [esi + 0x194]
mov ecx, dword [esi + 0x9a0]
sub eax, edi
neg edi
mov dword [eax - 8], ecx
mov ecx, dword [esi + 0xbc]
movq xmm0, qword [esi + 0x998]
movq qword [eax - 0x10], xmm0
mov dword [edx + edi - 4], ecx
jmp 0x41ed01
mov eax, dword [esi + 0x470]
mov ecx, dword [esi + 0x474]
cmp al, 4
mov dword [esi + 0x50], ecx
jne 0x41ee19
lea ecx, [esi + 0x470]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408bc9
cmp dword [esi + 0x470], 0
je 0x41ef83
mov eax, dword [esi + 0x474]
mov ecx, dword [esi + 0x478]
mov dword [esi + 0x50], ecx
mov edi, dword [esi + 0x50]
mov dword [esi + 0x18], 0
mov dword [esi + 0xc], eax
jmp 0x41f475
lea ecx, [esi + 0x188]
mov eax, dword [esi + 0xc]
mov edx, 0x5b96c4
mov byte [esi + 0x17], 1
mov dword [esi + 0x29a8], 0x13
mov dword [ecx], 0x5b96bc
mov dword [ecx + 4], 1
and dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x5b8dd0
and dword [ecx + 0xc], 0
mov dword [esi + 0x70], eax
call fcn.00535f60
jmp 0x41f742
mov dword [esi + 0xc], ecx
mov dword [esi + 0xac], 0
jmp 0x41eedd
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x18c]
jmp 0x41da6a
mov eax, dword [esi + 0x18c]
mov dword [esi + 0xac], 0
mov dword [esi + 0xc], edx
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0xac]
mov dword [esi + 0x29a8], 3
mov dword [esi + 0x10], 0x80000001
mov dword [esi + 0x18], eax
lea ecx, [esi + 0xf0]
mov byte [esi + 0x3b], 0
mov dword [esi + 0x29a8], 3
call fcn.0040647d
mov eax, dword [esi + 0x18]
movq xmm0, qword [esi + 0x470]
mov dword [esi + 0x29a8], 0x2f
mov dword [esi + 0x998], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x99c], eax
mov eax, dword [esi + 0x44]
mov dword [esi + 0x9a0], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x9a8], eax
mov eax, dword [esi + 0x478]
movq qword [esi + 0x9ac], xmm0
mov dword [esi + 0x9b4], eax
push 0x2b
pop edx
mov ecx, str.called__Result::unwrap____on_an__Err__value
push 0x53be94
push 0x53aa98
lea eax, [esi + 0x998]
push eax
call fcn.00536370
add esp, 0xc
jmp 0x41f742
lea ecx, [esi + 0x470]
mov byte [esi + 0x14], 0
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [esi + 0x1c], edx
lea edx, [esi + 0x3c]
mov dword [esi + 0x28], eax
call fcn.00408b85
cmp byte [esi + 0x470], 4
je 0x41efb8
mov eax, dword [esi + 0x470]
cmp al, 4
jne 0x41f0cc
movzx eax, word [esi + 0x2c]
cmp dword [esi + 0x50], eax
sete al
or al, byte [esi + 0x34]
je 0x41d882
mov eax, dword [esi + 0x30]
mov dword [esi + 0x99c], 0x53a912
mov dword [esi + 0x9a0], 0x2f
mov dword [esi + 0x998], 1
sub eax, 0x3c
sbb dword [esi + 0x10], 0
mov dword [esi + 0x2c], eax
jae 0x41f0d7
xor eax, eax
mov dword [esi + 0xc], 0x53a912
inc eax
mov dword [esi + 0x18], eax
jmp 0x41d882
mov dword [esi + 0x10], 0x80000001
jmp 0x41ef13
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x18], 0
mov dword [esi + 0xc], ecx
jmp 0x41f369
mov ecx, dword [esi + 0x474]
jmp 0x41ee16
lea ecx, [esi + 0x998]
mov byte [esi + 0x14], 0
call fcn.004050c6
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x34], eax
mov dword [esi + 0x58], ecx
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
cmp eax, dword [esi + 0x34]
sbb ecx, dword [esi + 0x58]
jb 0x41f37a
mov edx, dword [esi + 0xb0]
lea ecx, [esi + 0x998]
push dword [esi + 0x58]
push dword [esi + 0x34]
push 0
push 0
call fcn.004d6aa0
add esp, 0x10
xor eax, eax
cmp dword [esi + 0x998], eax
jne 0x41f3d3
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41f153
mov eax, dword [esi + 0x99c]
jmp 0x41f168
mov ecx, dword [esi + 0x998]
mov eax, dword [esi + 0x99c]
cmp cl, 4
jne 0x41f4f4
cmp eax, 0x6064b50
je 0x41f3a8
add dword [esi + 0x34], 1
adc dword [esi + 0x58], 0
jmp 0x41f0f2
mov dword [esi + 0xc], 0x5b971f
jmp 0x41f2fb
mov dword [esi + 0xc], 0x5b970d
push 0x12
jmp 0x41f2eb
mov dword [esi + 0xc], str.Invalid_AES_encryption_strengthInvalid_AES_vendor_versionInvalid_AES_vendorAES_extra_data_field_has_an_unsupported_lengthInvalid_reader_state
push 0x1f
jmp 0x41f2eb
mov eax, dword [esi + 0x998]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x99c]
jmp 0x41f2c7
mov eax, dword [esi + 0x998]
or dword [esi + 0x29a8], 0xffffffff
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xc], eax
push dword [esi + 0xb0]
call dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [esi + 0x10], 0x80000000
jmp 0x41ef13
movsd xmm0, qword [esi + 0xd4]
mov eax, dword [esi + 0xdc]
movq xmm1, qword [esi + 0x190]
movsd qword [esi + 0x9c8], xmm0
movsd xmm0, qword [esi + 0x188]
mov dword [esi + 0x9d0], eax
mov eax, dword [esi + 0x8a8]
movq qword [esi + 0x9a8], xmm1
movsd qword [esi + 0x9a0], xmm0
movsd xmm0, qword [esi + 0x198]
movsd qword [esi + 0x9b0], xmm0
movsd xmm0, qword [esi + 0x1a0]
movsd qword [esi + 0x9b8], xmm0
movq xmm0, qword [esi + 0x8a0]
mov dword [esi + 0x9dc], eax
mov eax, dword [esi + 0x34]
movq qword [esi + 0x9d4], xmm0
mov dword [esi + 0x9c0], eax
mov eax, dword [esi + 0x58]
mov dword [esi + 0x9c4], eax
xor eax, eax
inc eax
mov dword [esi + 0x998], eax
mov dword [esi + 0x99c], eax
push 0x48
pop ecx
call fcn.0040781e
test eax, eax
mov dword [esi + 0xc], eax
je 0x41f72d
push 0x48
lea eax, [esi + 0x998]
push eax
push dword [esi + 0xc]
call fcn.00527800
add esp, 0xc
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x44], eax
jmp 0x41ae92
mov eax, dword [esi + 0x99c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x9a0]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x18], 0
jmp 0x41f444
mov dword [esi + 0xc], 0x53a855
jmp 0x41f444
mov dword [esi + 0xc], 0x5b96f3
push 0x1a
pop eax
mov dword [esi + 0xc4], eax
xor eax, eax
inc eax
mov dword [esi + 0xc8], eax
mov eax, dword [esi + 0xc8]
mov ecx, dword [esi + 0xc4]
mov dword [esi + 0x18], eax
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x998]
call fcn.004051a8
mov eax, dword [esi + 0x20]
bt dword [esi + 0x30], 0xb
mov bl, 1
mov dword [esi + 0x1c], eax
jae 0x41f444
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0x48]
call fcn.004c9f70
mov eax, dword [esi + 0x20]
test bl, bl
mov dword [esi + 0x1c], eax
jne 0x41f444
mov ecx, dword [esi + 0xec]
mov edx, dword [esi + 0x150]
call fcn.004c9f70
mov ecx, dword [esi + 0xb4]
mov edx, dword [esi + 0x2c]
call fcn.004c9f70
mov eax, dword [esi + 0x20]
mov dword [esi + 0x1c], eax
jmp 0x41f444
mov dword [esi + 0xc], 0x53a890
jmp 0x41f30d
mov dword [esi + 0xc], 0x53a9f6
push 0x2a
jmp 0x41d979
push 0x1b
pop eax
mov dword [esi + 0x20], eax
mov dword [esi + 0xc], 0x53a875
jmp 0x41f30d
mov eax, dword [esi + 0x10]
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x18], eax
jmp 0x41f444
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x1c]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
sub dword [esi + 0x34], eax
sbb dword [esi + 0x58], ecx
lea ecx, [esi + 0x998]
call fcn.00408bc9
cmp dword [esi + 0x998], 0
je 0x41f51c
mov eax, dword [esi + 0x99c]
mov edi, dword [esi + 0x9a0]
jmp 0x41ee1c
mov dword [esi + 0x18], 0
jmp 0x41f369
xor ecx, ecx
mov edx, ebx
mov byte [esi + 0x6f], 1
inc ecx
call fcn.00535cf0
jmp 0x41f742
mov byte [esi + 0x6f], 1
call fcn.004206e0
jmp 0x41f742
mov ecx, dword [esi + 0x84]
jmp 0x41f437
mov ecx, dword [esi + 0x80]
jmp 0x41f437
mov ecx, dword [esi + 0xb8]
jmp 0x41f437
mov ecx, dword [esi + 0xe8]
jmp 0x41f437
mov ecx, dword [esi + 0xe4]
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], ecx
mov dword [esi + 0xc], eax
mov dword [esi + 0x29a8], 0x22
lea ecx, [esi + 0x188]
call fcn.0040687c
lea ecx, [esi + 0xd4]
mov byte [esi + 0x14], 0
mov dword [esi + 0x29a8], 0x22
call fcn.00405d42
mov edi, dword [esi + 0x1c]
mov ecx, dword [esi + 0x8a0]
mov edx, dword [esi + 0x8a4]
call fcn.004c9f70
mov dword [esi + 0x29a8], 3
mov dword [esi + 0x44], edi
jmp 0x41ae70
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
mov dword [esi + 0x18], 0
mov dword [esi + 0xc], eax
mov dword [esi + 0x20], ecx
jmp 0x41f358
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
mov dword [esi + 0x18], 0
mov dword [esi + 0xc], eax
mov dword [esi + 0x20], ecx
jmp 0x41f347
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
mov dword [esi + 0x18], 0
xor ebx, ebx
mov dword [esi + 0xc], eax
mov dword [esi + 0x20], ecx
jmp 0x41f32b
mov dword [esi + 0x18], 0
mov edi, eax
mov dword [esi + 0xc], ecx
jmp 0x41f475
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
mov dword [esi + 0x18], eax
mov dword [esi + 0xc], ecx
jmp 0x41d9e6
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b3b
cmp byte [esi + 0x998], 4
je 0x41f540
cmp byte [esi + 0x998], 4
jne 0x41f58a
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b3b
cmp byte [esi + 0x998], 4
je 0x41f564
cmp byte [esi + 0x998], 4
jne 0x41f58a
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41f59b
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x10], eax
jmp 0x41f5b2
mov eax, dword [esi + 0x998]
mov edi, dword [esi + 0x99c]
jmp 0x41ee1c
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0x10], ecx
jne 0x41f6d0
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408b85
cmp byte [esi + 0x998], 4
jne 0x41f5d8
mov eax, dword [esi + 0x99c]
mov dword [esi + 0x2c], eax
jmp 0x41f5ef
mov eax, dword [esi + 0x998]
mov ecx, dword [esi + 0x99c]
cmp al, 4
mov dword [esi + 0x2c], ecx
jne 0x41f6d8
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408bc9
cmp dword [esi + 0x998], 0
jne 0x41f3d3
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408bc9
cmp dword [esi + 0x998], 0
jne 0x41f3d3
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
mov eax, dword [ecx + 8]
mov dword [esi + 0x50], eax
call fcn.00408bc9
cmp dword [esi + 0x998], 0
jne 0x41f3d3
lea ecx, [esi + 0x998]
lea edx, [esi + 0x3c]
mov byte [esi + 0x14], 0
call fcn.00408bc9
cmp dword [esi + 0x998], 0
jne 0x41f3d3
mov eax, dword [esi + 0x2c]
cmp dword [esi + 0x10], eax
push 0x2f
pop edi
jne 0x41f475
mov eax, dword [esi + 0x9a0]
mov ecx, dword [esi + 0x9a4]
mov dword [esi + 0x99c], 0x53a8bb
mov dword [esi + 0x9a0], 0x28
mov dword [esi + 0x998], 1
add eax, dword [esi + 0x34]
adc ecx, dword [esi + 0x58]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x10], ecx
jb 0x41d970
lea ecx, [esi + 0x998]
mov byte [esi + 0x14], 0
call fcn.004050c6
jmp 0x41daa4
mov edi, dword [esi + 0x10]
jmp 0x41ee1c
mov edi, dword [esi + 0x2c]
jmp 0x41ee1c
mov byte [esi + 0x55], 1
push 0x46
pop edx
mov ecx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_threadlocal.rs
push 0x590478
push 0x53aa78
lea eax, [esi + 0x280]
push eax
call fcn.00536370
add esp, 0xc
jmp 0x41f742
mov byte [esi + 0x14], 0
call fcn.004206e0
jmp 0x41f742
mov byte [esi + 0x14], 0
call fcn.004206e0
jmp 0x41f742
mov byte [esi + 0x14], 0
push 8
pop ecx
mov edx, edi
call fcn.00535cf0
jmp 0x41f742
mov dword [esi + 0x29a8], 0x2d
push 8
pop ecx
push 0x48
pop edx
call fcn.00535cf0
ud2