Function at 0x40fc00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x2b0
mov ebx, edx
mov edi, ecx
mov byte [esp + 0x1f8], 0
mov byte [esp + 0x29c], 0
cmp byte [0x424a45], 0
je 0x40fc40
lea ecx, [esp + 0x1f8]
call fcn.0041ccd4
mov byte [esp + 0x29c], 1
cmp byte [0x424a5d], 0
mov dword [esp + 0xdc], ebx
je 0x40fcaf
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x20]
mov edx, dword [0x424a4c]
mov ecx, dword [0x424a54]
test al, al
mov dword [esp + 0x20], edi
je 0x40fc8f
cmp edx, 2
je 0x40fcf8
cmp edx, 1
jne 0x40fd19
cmp ecx, 2
mov eax, str._llo
mov ecx, str._016llo
jmp 0x40fd26
cmp edx, 2
je 0x40fd07
cmp edx, 1
jne 0x41271e
cmp ecx, 2
mov eax, str._llo
mov ecx, str._08llo
jmp 0x41272b
mov eax, dword [0x424a54]
cmp eax, 4
ja case.0x40fcb9.3
jmp dword [eax*4 + 0x41f4d0]
cmp byte [0x424a5a], 1
jne 0x412769
cmp byte [ebp + 8], 0
je 0x412769
call fcn.0041cc44
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x4128e2
mov ebx, edi
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0xa
jmp 0x4128ed
cmp ecx, 2
mov eax, str._llx
mov ecx, str._016llx
jmp 0x40fd26
cmp ecx, 2
mov eax, str._llx
mov ecx, str._08llx
jmp 0x41272b
cmp ecx, 2
mov eax, str._lld
mov ecx, str._016lld
cmove ecx, eax
mov dword [esp + 0x24], ecx
mov eax, 0x41ee59
mov dword [esp + 0x54], str.________________
mov esi, dword [ebx]
mov ebx, dword [ebx + 4]
cmp esi, ebx
je 0x41274c
mov dword [esp + 0x104], eax
jmp 0x40fd6b
push dword [esp + 0x30]
call sub.libc.dll_operator_delete_void_
add esp, 4
nop dword [eax]
add esi, 0x68
cmp esi, ebx
je 0x4126a4
mov eax, dword [esi + 0x44]
test al, 1
jne 0x40fd7b
cmp byte [0x424a5e], 0
jne 0x40fd60
test al, 1
je 0x40fd88
cmp byte [0x424a43], 0
jne 0x40fd60
test al, 2
jne 0x40fd95
cmp byte [0x424a51], 0
jne 0x40fd60
test al, 4
je 0x40fda2
cmp byte [0x424a5c], 0
jne 0x40fd60
test al, al
jns 0x40fdb8
cmp byte [0x424a48], 0
jne 0x40fdb8
cmp byte [0x424aa4], 0
je 0x40fd60
test byte [esi + 0x14], 1
jne 0x40fde7
lea eax, [esi + 0x14]
mov ecx, dword [eax + 8]
mov dword [esp + 0x30], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x28], xmm0
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 4]
cmp byte [0x424a88], 0
jne 0x40fe06
jmp 0x40fe75
lea ecx, [esp + 0x28]
push dword [esi + 0x18]
push dword [esi + 0x1c]
call fcn.004070d0
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 4]
cmp byte [0x424a88], 0
je 0x40fe75
movzx eax, byte [esp + 0x28]
test al, 1
je 0x40fe19
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
jmp 0x40fe1f
shr eax, 1
lea ecx, [esp + 0x29]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b0], ecx
sub esp, 0xc
movsd xmm0, qword [esp + 0x1bc]
movsd qword [esp + 4], xmm0
lea eax, [esp + 0x7c]
mov dword [esp], eax
call fcn.0041ccb0
add esp, 0xc
test byte [esp + 0x28], 1
je 0x40fe61
push dword [esp + 0x30]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x30], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0x28], xmm0
cmp byte [0x424a5d], 0
je 0x40fed5
call fcn.0041cc44
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x1ac], ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x1a8], ecx
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x1a4], ecx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x1a0], ecx
sub esp, 0x10
movsd xmm0, qword [esp + 0x1b0]
movsd qword [esp + 8], xmm0
movsd xmm0, qword [esp + 0x1b8]
movsd qword [esp], xmm0
mov ecx, eax
call fcn.0040f990
add esp, 0x10
mov eax, dword [0x424a54]
cmp eax, 4
mov dword [esp], esi
je 0x40feff
add edi, 0xffffffef
mov dword [esp + 8], edi
cmp edi, 3
ja 0x40ff69
lea ecx, [eax - 4]
cmp ecx, 0xfffffffd
ja 0x40ff69
cmp byte [0x424a5e], 0
je 0x40ff69
call fcn.0041cc44
movzx edx, byte [esp + 0x28]
test dl, 1
je 0x40ff18
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
jmp 0x40ff1e
shr edx, 1
lea esi, [esp + 0x29]
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x40ff48
mov byte [ecx], 0xa
inc dword [eax + 0x10]
mov esi, dword [esp]
test byte [esp + 0x28], 1
je 0x40fd60
jmp 0x40fd50
mov ecx, eax
push 1
push 0x41eb4f
call fcn.0041cbc6
mov esi, dword [esp]
test byte [esp + 0x28], 1
jne 0x40fd50
jmp 0x40fd60
cmp eax, 1
mov dword [esp + 0x6c], ebx
je 0x40ffbf
movzx ecx, byte [esi + 0x10]
lea edx, [ecx - 0x76]
cmp edx, 2
jb 0x40ff83
cmp ecx, 0x55
jne 0x40ffe8
cmp eax, 2
jne 0x40ffbf
push dword [esi + 4]
push dword [esi]
mov edi, dword [esp + 0x2c]
push edi
push 0x17
lea eax, [esp + 0x161]
push eax
call fcn.00416720
add esp, 0x14
push dword [esi + 0xc]
push dword [esi + 8]
push edi
push 0x17
lea eax, [esp + 0x1f1]
push eax
call fcn.00416720
add esp, 0x14
jmp 0x40ffe8
mov edi, dword [esp + 0x104]
push edi
lea eax, [esp + 0x155]
push eax
call sub.msvcrt.dll_strcpy
add esp, 8
push edi
lea eax, [esp + 0x1e5]
push eax
call sub.msvcrt.dll_strcpy
add esp, 8
movzx eax, byte [esi + 0x10]
movzx ecx, al
lea edx, [ecx - 0x76]
cmp edx, 2
jb 0x410067
cmp ecx, 0x55
je 0x410067
mov ecx, dword [esp + 0x20]
cmp dword [ecx + 4], 3
jne 0x41000c
push dword [esp + 0x54]
jmp 0x41001e
cmp dword [esp + 8], 3
ja 0x410030
cmp al, 0x49
jne 0x410030
push dword [esp + 0x104]
lea eax, [esp + 0x155]
push eax
call sub.msvcrt.dll_strcpy
add esp, 8
jmp 0x41004b
push dword [esi + 4]
push dword [esi]
push dword [esp + 0x2c]
push 0x17
lea eax, [esp + 0x161]
push eax
call fcn.00416720
add esp, 0x14
push dword [esi + 0xc]
push dword [esi + 8]
push dword [esp + 0x2c]
push 0x17
lea eax, [esp + 0x1f1]
push eax
call fcn.00416720
add esp, 0x14
mov eax, dword [0x424a54]
cmp eax, 3
je 0x41007a
cmp byte [0x424a70], 0
je 0x41008d
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 4]
cmp dword [esp + 8], 4
jb 0x4100be
cmp ecx, 3
je 0x4100be
test eax, eax
je 0x41016e
cmp eax, 2
jne 0x41015a
call fcn.0041cc44
movzx edx, byte [esp + 0x28]
test dl, 1
je 0x4101b5
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
jmp 0x4101bb
lea eax, [ecx - 0x15]
mov dword [esp + 0x68], eax
cmp eax, 0xfffffffc
mov edi, dword [esp + 0x20]
mov eax, 0
cmovb edi, eax
cmp ecx, 3
jne 0x410200
mov eax, dword [esi + 0x38]
movsd xmm0, qword [esi + 0x30]
movsd qword [esp + 0x70], xmm0
mov edx, dword [eax]
sub esp, 0xc
movsd xmm0, qword [esp + 0x7c]
movsd qword [esp + 4], xmm0
mov dword [esp], eax
lea ecx, [esp + 0x14c]
call dword [edx + 0x14]
mov ecx, dword [esp + 0x140]
mov eax, ecx
shr eax, 5
and al, 0x10
test cl, 1
jne 0x41057b
mov edx, ecx
shr dl, 1
and dl, 1
or dl, al
or dl, 0xe
mov byte [esp + 8], dl
mov esi, edi
test ecx, 0x400
jne 0x410639
mov edx, ecx
mov eax, ecx
and eax, 0x800
cmp eax, 1
mov eax, 0
adc al, 1
mov dword [esp + 0x14], eax
jmp 0x410641
cmp dword [esp + 8], 4
jb 0x41029f
cmp eax, 3
jne 0x41029f
cmp byte [0x424a58], 0
jne 0x410408
call fcn.0041cc44
mov edi, eax
lea esi, [esp + 0x151]
push esi
call sub.msvcrt.dll_strlen
add esp, 4
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 0x10]
sub edx, ecx
cmp eax, edx
jbe 0x4103cf
mov ecx, edi
push eax
push esi
call fcn.0041cbc6
mov edi, eax
mov ecx, dword [eax + 0x10]
jmp 0x4103ef
shr edx, 1
lea esi, [esp + 0x29]
lea ebx, [esp + 0x151]
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
mov esi, eax
mov eax, dword [eax + 0x10]
cmp dword [esi + 0xc], eax
je 0x4102c8
mov byte [eax], 0x20
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
mov ecx, dword [esp]
movzx ecx, byte [ecx + 0x10]
cmp eax, dword [esi + 0xc]
jae 0x4102eb
lea edx, [eax + 1]
mov dword [esi + 0x10], edx
mov byte [eax], cl
jmp 0x4102f8
mov ecx, edi
mov edi, dword [esi + 0x30]
mov eax, dword [esi + 0x34]
mov dword [esp + 8], eax
mov eax, dword [ecx]
mov esi, ecx
call dword [eax + 0x20]
mov ecx, esi
test al, al
je 0x410592
call fcn.0041cd7c
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x50], ecx
mov eax, dword [eax + 0x18]
mov dword [esp + 0xd8], eax
test edi, edi
je 0x41060d
mov dword [esp + 0x140], edi
mov eax, dword [esp + 8]
mov dword [esp + 0x144], eax
sub esp, 0xc
movsd xmm0, qword [esp + 0x14c]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x7c]
call fcn.0041cda6
movzx eax, byte [esp + 0x74]
mov byte [esp + 8], al
movzx eax, byte [esp + 0x75]
mov dword [esp + 0x14], eax
movzx eax, word [esp + 0x76]
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x1c], eax
jmp 0x410670
cmp eax, 1
jne 0x4119d1
call fcn.0041cc44
movzx ecx, byte [esp + 0x28]
test cl, 1
je 0x4108e3
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
jmp 0x4108e9
mov ecx, esi
push 1
push 0x41eec9
call fcn.0041cbc6
mov esi, eax
mov eax, dword [eax + 0x10]
mov ecx, dword [esp]
movzx ecx, byte [ecx + 0x10]
cmp eax, dword [esi + 0xc]
jb 0x4101f3
movzx eax, cl
mov ecx, esi
push eax
call fcn.0041cbcc
mov esi, eax
mov eax, dword [esi + 0x10]
cmp dword [esi + 0xc], eax
je 0x41030c
mov byte [eax], 0x20
mov edi, dword [esi + 0x10]
inc edi
mov dword [esi + 0x10], edi
jmp 0x41031f
mov ecx, esi
push 1
push 0x41eec9
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
push ebx
call sub.msvcrt.dll_strlen
add esp, 4
mov ecx, dword [esi + 0xc]
sub ecx, edi
cmp eax, ecx
jbe 0x410341
mov ecx, esi
push eax
push ebx
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
jmp 0x41035a
test eax, eax
je 0x41035a
push eax
push ebx
push edi
mov ebx, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, dword [esi + 0x10]
add edi, ebx
mov dword [esi + 0x10], edi
cmp dword [esi + 0xc], edi
lea ebx, [esp + 0x1e1]
je 0x410372
mov byte [edi], 0x20
mov edi, dword [esi + 0x10]
inc edi
mov dword [esi + 0x10], edi
jmp 0x410385
mov ecx, esi
push 1
push 0x41eec9
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
cmp dword [esp + 8], 4
mov eax, 0x41eecb
cmovb ebx, eax
push ebx
call sub.msvcrt.dll_strlen
add esp, 4
mov ecx, dword [esi + 0xc]
sub ecx, edi
cmp eax, ecx
jbe 0x4103b2
mov ecx, esi
push eax
push ebx
call fcn.0041cbc6
jmp 0x4119d1
test eax, eax
je 0x4119d1
push eax
push ebx
push edi
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi + 0x10], edi
jmp 0x4119d1
test eax, eax
je 0x4103ef
push eax
lea edx, [esp + 0x155]
push edx
push ecx
mov esi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [edi + 0x10]
add ecx, esi
mov dword [edi + 0x10], ecx
cmp ecx, dword [edi + 0xc]
jae 0x4103ff
lea eax, [ecx + 1]
mov dword [edi + 0x10], eax
mov byte [ecx], 0x20
jmp 0x410408
mov ecx, edi
push 0x20
call fcn.0041cbcc
cmp byte [0x424aa5], 0
je 0x41047d
call fcn.0041cc44
mov edi, eax
lea esi, [esp + 0x1e1]
push esi
call sub.msvcrt.dll_strlen
add esp, 4
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 0x10]
sub edx, ecx
cmp eax, edx
jbe 0x410444
mov ecx, edi
push eax
push esi
call fcn.0041cbc6
mov edi, eax
mov ecx, dword [eax + 0x10]
jmp 0x410464
test eax, eax
je 0x410464
push eax
lea edx, [esp + 0x1e5]
push edx
push ecx
mov esi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [edi + 0x10]
add ecx, esi
mov dword [edi + 0x10], ecx
cmp ecx, dword [edi + 0xc]
jae 0x410474
lea eax, [ecx + 1]
mov dword [edi + 0x10], eax
mov byte [ecx], 0x20
jmp 0x41047d
mov ecx, edi
push 0x20
call fcn.0041cbcc
call fcn.0041cc44
mov esi, dword [esp]
movzx ecx, byte [esi + 0x10]
mov edx, dword [eax + 0x10]
cmp edx, dword [eax + 0xc]
jae 0x41049e
lea esi, [edx + 1]
mov dword [eax + 0x10], esi
mov esi, dword [esp]
mov byte [edx], cl
jmp 0x4104a9
movzx edx, cl
mov ecx, eax
push edx
call fcn.0041cbcc
cmp dword [esp + 8], 3
ja 0x410fd4
cmp byte [esi + 0x10], 0x2d
jne 0x410fd4
mov edi, dword [esp + 0x20]
mov ebx, dword [esi + 0x30]
mov esi, dword [esi + 0x34]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x20]
test al, al
je 0x4104fa
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], esi
sub esp, 0xc
movsd xmm0, qword [esp + 0x44]
movsd qword [esp + 4], xmm0
mov dword [esp], edi
lea edi, [esp + 0x7c]
mov ecx, edi
call fcn.0041cda6
jmp 0x41051f
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], esi
sub esp, 0xc
movsd xmm0, qword [esp + 0x44]
movsd qword [esp + 4], xmm0
mov dword [esp], edi
lea edi, [esp + 0x7c]
mov ecx, edi
call fcn.0041cd94
movzx ebx, byte [esp + 0x74]
mov bh, byte [esp + 0x75]
movzx esi, word [esp + 0x76]
call fcn.0041cc44
mov dword [esp + 0x74], str.__02x__04x
mov dword [esp + 0x70], 0x41f16c
mov byte [esp + 0x78], bh
mov word [esp + 0x7a], si
mov ecx, eax
push edi
call fcn.0041cbde
movzx ecx, bl
add ecx, 0xffffffe0
cmp ecx, 0xde
ja case.0x41056a.33
mov eax, 0x41f174
jmp dword [ecx*4 + 0x41f504]
mov eax, 0x41f17c
jmp case.0x41056a.32
mov esi, edi
mov edx, ecx
or al, 1
mov dword [esp + 0x14], 0
mov byte [esp + 8], al
jmp 0x410641
call fcn.0041cdd0
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x50], ecx
mov eax, dword [eax + 0x18]
mov dword [esp + 0xd8], eax
test edi, edi
je 0x41060d
mov dword [esp + 0x140], edi
mov eax, dword [esp + 8]
mov dword [esp + 0x144], eax
sub esp, 0xc
movsd xmm0, qword [esp + 0x14c]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x7c]
call fcn.0041cd94
movzx eax, byte [esp + 0x74]
mov byte [esp + 8], al
movzx eax, byte [esp + 0x75]
mov dword [esp + 0x14], eax
movzx eax, word [esp + 0x76]
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x78]
mov dword [esp + 0x1c], eax
mov dword [esp + 0xc], 0
jmp 0x410670
mov eax, dword [esp]
movzx ecx, byte [eax + 0x54]
mov byte [esp + 8], cl
movzx ecx, byte [eax + 0x55]
mov dword [esp + 0x14], ecx
movzx ecx, word [eax + 0x56]
mov dword [esp + 0x10], ecx
mov ecx, dword [eax]
mov dword [esp + 0x1c], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0xc], eax
xor edi, edi
jmp 0x410670
mov al, 3
mov dword [esp + 0x14], eax
mov edx, ecx
and edx, 4
shl edx, 5
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x50], 1
mov dword [esp + 0xc], 0
xor edi, edi
mov dword [esp + 0xd8], 0
cmp byte [0x424a70], 0
je 0x4106c4
call fcn.0041cc44
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], 0x41eefc
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x78], ecx
mov ecx, eax
lea eax, [esp + 0x70]
push eax
call fcn.0041cbde
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x41074f
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0x20
jmp 0x410758
movzx ecx, byte [esp + 8]
and cl, 0xe
cmp byte [0x424a58], 0
mov byte [esp + 4], cl
mov edi, esi
jne 0x410992
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x104]
cmp cl, 0xa
je 0x410704
cmp byte [esp + 4], 0xe
jne 0x410715
mov eax, dword [esp + 0x20]
cmp dword [eax + 4], 3
mov eax, dword [esp + 0x54]
jne 0x410715
push eax
lea eax, [esp + 0x155]
push eax
call sub.msvcrt.dll_strcpy
add esp, 8
call fcn.0041cc44
mov edi, eax
lea esi, [esp + 0x151]
push esi
call sub.msvcrt.dll_strlen
add esp, 4
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 0x10]
sub edx, ecx
cmp eax, edx
jbe 0x410950
mov ecx, edi
push eax
push esi
call fcn.0041cbc6
mov edi, eax
mov ecx, dword [eax + 0x10]
jmp 0x410970
mov ecx, eax
push 0x20
call fcn.0041cbcc
mov dword [esp + 0x3c], str._02x__02x__04x__08x
mov dword [esp + 0x38], 0x41f140
movzx ecx, byte [esp + 8]
mov byte [esp + 0x40], cl
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x41], cl
mov ecx, dword [esp + 0x10]
mov word [esp + 0x42], cx
mov dword [esp + 0x44], edi
mov ecx, eax
lea eax, [esp + 0x38]
push eax
call fcn.0041cbde
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x4107a5
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0x20
jmp 0x4107ae
mov ecx, eax
push 0x20
call fcn.0041cbcc
mov ecx, dword [esp]
mov edi, esi
movzx edx, byte [ecx + 0x14]
test dl, 1
je 0x4107c4
mov esi, dword [ecx + 0x1c]
mov edx, dword [ecx + 0x18]
jmp 0x4107c9
lea esi, [ecx + 0x15]
shr edx, 1
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
movzx eax, byte [esp + 8]
and al, 0xe
cmp al, 0xa
jne 0x410cc0
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xe
ja 0x410803
mov ecx, eax
push 0xf
push str.__indirect_for
call fcn.0041cbc6
jmp 0x410822
mov dword [ecx + 0xb], 0x20726f66
mov dword [ecx + 8], 0x66207463
mov dword [ecx + 4], 0x65726964
mov dword [ecx], 0x6e692820
add dword [eax + 0x10], 0xf
mov esi, dword [esp]
call fcn.0041cc44
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], 0x41eefc
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x78], ecx
mov ecx, eax
lea eax, [esp + 0x70]
push eax
call fcn.0041cbde
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x410869
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0x20
jmp 0x410872
mov ecx, eax
push 0x20
call fcn.0041cbcc
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov eax, dword [esi + 0x30]
test eax, eax
je 0x410931
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
sub esp, 0xc
movsd xmm0, qword [esp + 0x44]
movsd qword [esp], xmm0
lea eax, [esp + 0x7c]
mov dword [esp + 8], eax
mov ecx, edi
call fcn.0041cd8e
mov esi, eax
call fcn.0041cc44
test esi, esi
je 0x410c6b
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 1
ja 0x410c89
mov ecx, eax
push 2
push 0x41eedd
jmp 0x410cbb
shr ecx, 1
lea edx, [esp + 0x29]
lea ebx, [esp + 0x151]
lea esi, [esp + 0x70]
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], 0x14
mov dword [esp + 0x7c], 1
mov ecx, eax
push esi
call fcn.0041cbd8
mov esi, eax
mov eax, dword [eax + 0x10]
cmp dword [esi + 0xc], eax
je 0x4109e2
mov byte [eax], 0x7c
mov edi, dword [esi + 0x10]
inc edi
mov dword [esi + 0x10], edi
jmp 0x4109f5
call fcn.0041cc44
movzx edx, byte [esi + 0x58]
test dl, 1
je 0x410c94
mov ecx, esi
mov esi, dword [esi + 0x60]
mov edx, dword [ecx + 0x5c]
jmp 0x410c99
test eax, eax
je 0x410970
push eax
lea edx, [esp + 0x155]
push edx
push ecx
mov esi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [edi + 0x10]
add ecx, esi
mov dword [edi + 0x10], ecx
cmp ecx, dword [edi + 0xc]
jae 0x410980
lea eax, [ecx + 1]
mov dword [edi + 0x10], eax
mov byte [ecx], 0x20
jmp 0x410989
mov ecx, edi
push 0x20
call fcn.0041cbcc
movzx ecx, byte [esp + 4]
mov edi, dword [esp + 0x18]
mov eax, ecx
shr al, 1
cmp al, 7
mov esi, dword [esp]
ja case.0x4109a4.2
movzx eax, al
jmp dword [eax*4 + 0x41f4e4]
mov eax, dword [esp + 0x1c]
or eax, dword [esp + 0xc]
je 0x410e0f
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 8
ja 0x410e4f
mov ecx, eax
push 9
push str._common_
call fcn.0041cbc6
jmp 0x410e64
mov ecx, esi
push 1
push 0x41eee0
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
push ebx
call sub.msvcrt.dll_strlen
add esp, 4
mov ecx, dword [esi + 0xc]
sub ecx, edi
cmp eax, ecx
jbe 0x410a17
mov ecx, esi
push eax
push ebx
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
jmp 0x410a30
test eax, eax
je 0x410a30
push eax
push ebx
push edi
mov ebx, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, dword [esi + 0x10]
add edi, ebx
mov dword [esi + 0x10], edi
mov eax, dword [esi + 0xc]
sub eax, edi
cmp eax, 3
lea ebx, [esp + 0x1e1]
ja 0x410a56
mov ecx, esi
push 4
push str.
call fcn.0041cbc6
mov esi, eax
mov eax, dword [eax + 0x10]
jmp 0x410a65
mov dword [edi], 0x2020207c
mov eax, dword [esi + 0x10]
add eax, 4
mov dword [esi + 0x10], eax
mov ecx, dword [esp]
movzx ecx, byte [ecx + 0x10]
cmp eax, dword [esi + 0xc]
jae 0x410a7b
lea edx, [eax + 1]
mov dword [esi + 0x10], edx
mov byte [eax], cl
jmp 0x410a88
movzx eax, cl
mov ecx, esi
push eax
call fcn.0041cbcc
mov esi, eax
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
sub ecx, eax
cmp ecx, 2
ja 0x410aa7
mov ecx, esi
push 3
push 0x41eee7
call fcn.0041cbc6
mov esi, eax
jmp 0x410ab4
mov byte [eax + 2], 0x7c
mov word [eax], 0x2020
add dword [esi + 0x10], 3
mov ecx, dword [esp]
mov eax, dword [ecx + 0x28]
mov ecx, dword [ecx + 0x2c]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], 0x12
mov dword [esp + 0x44], 2
mov ecx, esi
lea eax, [esp + 0x38]
push eax
call fcn.0041cbd8
mov esi, eax
mov eax, dword [eax + 0x10]
cmp dword [esi + 0xc], eax
je 0x410af7
mov byte [eax], 0x7c
mov edi, dword [esi + 0x10]
inc edi
mov dword [esi + 0x10], edi
jmp 0x410b0a
mov ecx, esi
push 1
push 0x41eee0
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
push ebx
call sub.msvcrt.dll_strlen
add esp, 4
mov ecx, dword [esi + 0xc]
sub ecx, edi
cmp eax, ecx
jbe 0x410b2c
mov ecx, esi
push eax
push ebx
call fcn.0041cbc6
mov esi, eax
mov edi, dword [eax + 0x10]
jmp 0x410b45
test eax, eax
je 0x410b45
push eax
push ebx
push edi
mov ebx, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, dword [esi + 0x10]
add edi, ebx
mov dword [esi + 0x10], edi
mov eax, dword [esi + 0xc]
sub eax, edi
cmp eax, 6
ja 0x410b64
mov ecx, esi
push 7
push 0x41eeeb
call fcn.0041cbc6
mov esi, eax
mov eax, dword [eax + 0x10]
jmp 0x410b7a
mov dword [edi + 3], 0x7c202020
mov dword [edi], 0x2020207c
mov eax, dword [esi + 0x10]
add eax, 7
mov dword [esi + 0x10], eax
mov ecx, dword [esp]
mov edx, dword [ecx + 0x20]
mov edi, dword [ecx + 0x24]
mov ecx, dword [esi + 0xc]
sub ecx, eax
cmp ecx, edi
jae 0x410b9a
mov ecx, esi
push edi
push edx
call fcn.0041cbc6
jmp 0x4119d1
test edi, edi
je 0x4119d1
push edi
push edx
push eax
jmp 0x4103bf
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xa
ja 0x410ceb
mov ecx, eax
push 0xb
push str._indirect_
call fcn.0041cbc6
jmp 0x411448
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xa
ja 0x410d08
mov ecx, eax
push 0xb
push str._absolute_
call fcn.0041cbc6
jmp 0x411448
mov eax, dword [esp + 0x20]
cmp dword [eax + 4], 3
jne 0x410d25
call fcn.0041cc44
mov ecx, dword [esp + 0x14]
cmp cl, 3
je 0x411334
movzx ecx, cl
cmp ecx, 2
je 0x411323
cmp ecx, 1
jne 0x411345
mov ecx, eax
push str._LTO_CODE_
call fcn.00403760
jmp 0x411448
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 3
ja 0x410ddc
mov ecx, eax
push 4
push str.___
call fcn.0041cbc6
jmp 0x411448
mov edx, dword [esp + 0x70]
mov esi, dword [esp + 0x74]
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edi, ecx
cmp edi, esi
jae 0x410deb
mov ecx, eax
push esi
push edx
jmp 0x410c9d
mov word [ecx], 0x293f
add dword [eax + 0x10], 2
jmp 0x410cc0
add esi, 0x59
shr edx, 1
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x410cb2
mov byte [ecx], 0x29
inc dword [eax + 0x10]
jmp 0x410cc0
mov ecx, eax
push 1
push 0x41ebf3
call fcn.0041cbc6
call fcn.0041cc44
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x410cd8
mov byte [ecx], 0xa
inc dword [eax + 0x10]
jmp 0x4119d1
mov ecx, eax
push 1
push 0x41eb4f
call fcn.0041cbc6
jmp 0x4119d1
mov dword [ecx + 7], 0x20297463
mov dword [ecx + 4], 0x63657269
mov dword [ecx], 0x646e6928
add dword [eax + 0x10], 0xb
jmp 0x411448
mov dword [ecx + 7], 0x20296574
mov dword [ecx + 4], 0x74756c6f
mov dword [ecx], 0x73626128
add dword [eax + 0x10], 0xb
jmp 0x411448
mov eax, dword [esi + 0x30]
test eax, eax
je 0x4111f8
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], ecx
mov eax, dword [edi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x194]
movsd qword [esp + 4], xmm0
mov dword [esp], edi
lea ecx, [esp + 0x7c]
call dword [eax + 0x40]
test byte [esp + 0x7c], 1
jne 0x4112c7
mov eax, dword [esp + 0x78]
mov dword [esp + 0x40], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0x38], xmm0
mov eax, dword [edi]
lea ecx, [esp + 0x108]
push edi
call dword [eax + 0xb4]
mov eax, dword [esp + 0x40]
cmp eax, dword [esp + 0x110]
jne 0x410db9
mov eax, dword [esp + 0x38]
xor eax, dword [esp + 0x108]
mov ecx, dword [esp + 0x3c]
xor ecx, dword [esp + 0x10c]
or ecx, eax
je 0x4112fa
test byte [esp + 0x7c], 1
je 0x410dd5
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x70], 0
test ecx, ecx
je 0x410dd5
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, edi
jmp 0x41120c
mov dword [ecx], 0x20293f28
add dword [eax + 0x10], 4
jmp 0x411448
test esi, esi
je 0x410ca5
push esi
push edx
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
mov eax, edi
add esp, 0xc
add esi, dword [edi + 0x10]
mov dword [edi + 0x10], esi
mov ecx, esi
jmp 0x410ca5
call fcn.0041cc44
mov esi, eax
xor ecx, ecx
cmp byte [esp + 4], 0xc
sete cl
mov eax, 0x41ec51
mov edx, str._prebound
cmove eax, edx
lea edi, [ecx + ecx*8]
inc edi
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
sub edx, ecx
cmp edi, edx
jbe 0x4111b6
mov ecx, esi
push edi
push eax
call fcn.0041cbc6
jmp 0x4111c4
mov byte [ecx + 8], 0x20
mov dword [ecx + 4], 0x296e6f6d
mov dword [ecx], 0x6d6f6328
add dword [eax + 0x10], 9
mov eax, dword [esp + 0x10]
mov bl, ah
and bl, 0xf
je 0x411448
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xc
ja 0x411184
mov ecx, eax
push 0xd
push str._alignment_2
call fcn.0041cbc6
jmp 0x4111a0
mov eax, 0x41f204
jmp case.0x41056a.32
mov eax, 0x41f21c
jmp case.0x41056a.32
mov eax, 0x41f1dc
jmp case.0x41056a.32
mov eax, 0x41f23c
jmp case.0x41056a.32
mov eax, 0x41f22c
jmp case.0x41056a.32
mov eax, 0x41f1c4
jmp case.0x41056a.32
mov eax, 0x41f254
jmp case.0x41056a.32
mov eax, 0x41f224
jmp case.0x41056a.32
mov eax, 0x41f1d4
jmp case.0x41056a.32
mov eax, 0x41f20c
jmp case.0x41056a.32
mov eax, 0x41f184
jmp case.0x41056a.32
mov eax, 0x41f25c
jmp case.0x41056a.32
mov eax, 0x41f26c
jmp case.0x41056a.32
mov eax, 0x41f19c
jmp case.0x41056a.32
mov eax, 0x41f1cc
jmp case.0x41056a.32
mov eax, 0x41f234
jmp case.0x41056a.32
mov eax, 0x41f1a4
jmp case.0x41056a.32
mov eax, 0x41f1ac
jmp case.0x41056a.32
mov eax, 0x41f1e4
jmp case.0x41056a.32
mov eax, 0x41f1ec
jmp case.0x41056a.32
mov eax, 0x41f264
jmp case.0x41056a.32
mov eax, 0x41f18c
jmp case.0x41056a.32
mov eax, 0x41f194
jmp case.0x41056a.32
mov eax, 0x41f1bc
jmp case.0x41056a.32
mov eax, 0x41f1b4
jmp case.0x41056a.32
mov eax, 0x41f1fc
jmp case.0x41056a.32
mov eax, 0x41f1f4
jmp case.0x41056a.32
mov eax, 0x41f214
jmp case.0x41056a.32
mov eax, 0x41f24c
jmp case.0x41056a.32
mov eax, 0x41f244
mov esi, dword [eax + 4]
test esi, esi
je case.0x41056a.33
call fcn.0041cc44
mov dword [esp + 0x74], str._5.5s
mov dword [esp + 0x70], 0x41f324
mov dword [esp + 0x78], esi
jmp 0x410fc8
call fcn.0041cc44
mov dword [esp + 0x74], str.____02x
mov dword [esp + 0x70], 0x41f334
mov byte [esp + 0x78], bl
mov ecx, eax
lea eax, [esp + 0x70]
push eax
call fcn.0041cbde
call fcn.0041cc44
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x410ffb
mov byte [ecx], 0x20
inc dword [eax + 0x10]
movzx edx, byte [esp + 0x28]
test dl, 1
je 0x411013
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
jmp 0x411019
mov ecx, eax
push 1
push 0x41eec9
call fcn.0041cbc6
movzx edx, byte [esp + 0x28]
test dl, 1
jne 0x410ff1
shr edx, 1
lea esi, [esp + 0x29]
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
cmp dword [esp + 8], 3
ja 0x4119d1
mov eax, dword [esp]
cmp byte [eax + 0x10], 0x49
jne 0x4119d1
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xe
ja 0x41105c
mov ecx, eax
push 0xf
push str.__indirect_for
call fcn.0041cbc6
jmp 0x41107b
mov dword [ecx + 0xb], 0x20726f66
mov dword [ecx + 8], 0x66207463
mov dword [ecx + 4], 0x65726964
mov dword [ecx], 0x6e692820
add dword [eax + 0x10], 0xf
mov ecx, dword [esp + 0x20]
mov esi, dword [esp]
mov eax, dword [esi + 0x30]
test eax, eax
je 0x4110f3
mov edx, dword [esi + 0x34]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x198], eax
mov dword [esp + 0x19c], edx
sub esp, 0xc
movsd xmm0, qword [esp + 0x1a4]
movsd qword [esp], xmm0
lea eax, [esp + 0x7c]
mov dword [esp + 8], eax
call fcn.0041cd8e
mov esi, eax
call fcn.0041cc44
test esi, esi
je 0x41110b
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 1
ja 0x411125
mov ecx, eax
push 2
push 0x41eedd
call fcn.0041cbc6
jmp 0x4119d1
call fcn.0041cc44
movzx edx, byte [esi + 0x58]
test dl, 1
je 0x411133
mov ecx, esi
mov esi, dword [esi + 0x60]
mov edx, dword [ecx + 0x5c]
jmp 0x411138
mov edx, dword [esp + 0x70]
mov esi, dword [esp + 0x74]
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edi, ecx
cmp edi, esi
jae 0x411167
mov ecx, eax
push esi
push edx
jmp 0x41113c
mov word [ecx], 0x293f
add dword [eax + 0x10], 2
jmp 0x4119d1
add esi, 0x59
shr edx, 1
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x411154
mov byte [ecx], 0x29
inc dword [eax + 0x10]
jmp 0x4119d1
mov ecx, eax
push 1
push 0x41ebf3
call fcn.0041cbc6
jmp 0x4119d1
test esi, esi
je 0x411144
push esi
push edx
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
mov eax, edi
add esp, 0xc
add esi, dword [edi + 0x10]
mov dword [edi + 0x10], esi
mov ecx, esi
jmp 0x411144
mov byte [ecx + 0xc], 0x5e
mov dword [ecx + 8], 0x3220746e
mov dword [ecx + 4], 0x656d6e67
mov dword [ecx], 0x696c6128
add dword [eax + 0x10], 0xd
movzx edx, bl
mov ecx, eax
push edx
call fcn.0041cbe4
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
jmp 0x41140b
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi + 0x10], edi
mov esi, dword [esp + 0x10]
and esi, 7
call fcn.0041cc44
mov ecx, eax
cmp si, 5
je 0x411434
cmp esi, 4
je 0x41142d
cmp esi, 1
jne 0x41143b
push str.undefined__lazy_bound__
jmp 0x411440
mov ecx, edi
mov eax, dword [esi + 0x50]
mov dword [esp + 0x40], eax
movsd xmm0, qword [esi + 0x48]
movsd qword [esp + 0x38], xmm0
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x10c], esi
mov dword [esp + 0x108], edi
mov eax, dword [ecx]
sub esp, 0xc
movsd xmm0, qword [esp + 0x114]
movsd qword [esp + 4], xmm0
mov dword [esp + 0x24], ecx
mov dword [esp], ecx
lea ecx, [esp + 0x7c]
call dword [eax + 0x48]
test byte [esp + 0x78], 1
jne 0x41125d
mov eax, dword [esp + 0x70]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x14], eax
jmp 0x411282
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x64], 0
test ecx, ecx
je 0x41127a
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [esp + 0x14], 0
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], esi
sub esp, 8
movsd xmm0, qword [esp + 0x78]
movsd qword [esp], xmm0
mov ecx, dword [esp + 0x20]
call fcn.0041cdc4
mov dword [esp + 0x18], eax
mov edi, edx
call fcn.0041cc44
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x411356
mov byte [ecx], 0x28
mov ecx, dword [eax + 0x10]
inc ecx
mov dword [eax + 0x10], ecx
jmp 0x411367
mov eax, dword [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x108], eax
lea eax, [esp + 0x108]
push eax
call fcn.0040db90
add esp, 4
mov ecx, dword [esp + 0x108]
test ecx, ecx
je 0x4112fa
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 5
ja 0x412620
mov ecx, eax
push 6
push str._____
call fcn.0041cbc6
jmp 0x412630
mov ecx, eax
push str._LTO_DATA_
call fcn.00403760
jmp 0x411448
mov ecx, eax
push str._LTO_RODATA_
call fcn.00403760
jmp 0x411448
mov ecx, eax
push str._____
call fcn.00403760
jmp 0x411448
mov ecx, eax
push 1
push 0x41ec51
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
mov esi, dword [esp]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, edi
jae 0x411384
mov ecx, eax
push edi
push dword [esp + 0x1c]
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
jmp 0x4113a6
test edi, edi
je 0x4113a6
push edi
push dword [esp + 0x1c]
push ecx
mov esi, eax
call sub.msvcrt.dll_memcpy
mov eax, esi
mov esi, dword [esp + 0xc]
add esp, 0xc
mov ecx, dword [eax + 0x10]
add ecx, edi
mov dword [eax + 0x10], ecx
cmp dword [eax + 0xc], ecx
mov edi, dword [esp + 0x14]
je 0x4113bb
mov byte [ecx], 0x2c
mov ecx, dword [eax + 0x10]
inc ecx
mov dword [eax + 0x10], ecx
jmp 0x4113cc
mov ecx, eax
push 1
push 0x41d29c
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edi, edx
jbe 0x4113e6
mov ecx, eax
push edi
push dword [esp + 0x68]
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
jmp 0x411408
test edi, edi
je 0x411408
push edi
push dword [esp + 0x68]
push ecx
mov esi, eax
call sub.msvcrt.dll_memcpy
mov eax, esi
mov esi, dword [esp + 0xc]
add esp, 0xc
add edi, dword [eax + 0x10]
mov dword [eax + 0x10], edi
mov ecx, edi
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 1
ja 0x411422
mov ecx, eax
push 2
push 0x41ef30
call fcn.0041cbc6
jmp 0x411448
mov word [ecx], 0x2029
add dword [eax + 0x10], 2
jmp 0x411448
push str.undefined__private__
jmp 0x411440
push str.undefined__private_lazy_bound__
jmp 0x411440
push str.undefined_
call fcn.00403760
mov esi, dword [esp]
movzx ebx, byte [esp + 8]
test bl, 1
jne 0x41147c
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
test bl, 0x10
jne 0x4114a7
cmp edx, 0xc
ja 0x4114c3
mov ecx, eax
push 0xd
push str.non_external
call fcn.0041cbc6
jmp 0x41159a
mov ebx, dword [esp + 0x10]
test bl, 0x10
je 0x4114fd
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0x18
ja 0x4114e4
mov ecx, eax
push 0x19
push str._referenced_dynamically_
call fcn.0041cbc6
jmp 0x4114fd
cmp edx, 0x25
ja 0x411574
mov ecx, eax
push 0x26
push str.non_external__was_a_private_external_
call fcn.0041cbc6
jmp 0x41159a
mov byte [ecx + 0xc], 0x20
mov dword [ecx + 8], 0x6c616e72
mov dword [ecx + 4], 0x65747865
mov dword [ecx], 0x2d6e6f6e
add dword [eax + 0x10], 0xd
jmp 0x41159a
movups xmm0, xmmword [0x41efed]
movups xmmword [ecx + 9], xmm0
movups xmm0, xmmword [str._referenced_dynamically_]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x19
test byte [esp + 8], 0x10
jne 0x41154a
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
test bl, 0xc0
je 0x411678
mov esi, ebx
and esi, 0xc0
cmp esi, 0xc0
jne 0x411694
cmp edx, 0x22
mov esi, dword [esp]
ja 0x411904
mov ecx, eax
push 0x23
push str.weak_external_automatically_hidden
call fcn.0041cbc6
jmp 0x41159e
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
test bl, bl
js 0x4115d5
cmp edx, 0x10
ja 0x41187f
mov ecx, eax
push 0x11
push str.private_external
call fcn.0041cbc6
jmp 0x41159e
movsd xmm0, qword [0x41f082]
movsd qword [ecx + 0x1e], xmm0
movups xmm0, xmmword [0x41f074]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.non_external__was_a_private_external_]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x26
mov ebx, dword [esp + 0x10]
movzx eax, byte [esp + 4]
cmp dword [esp + 0x50], 1
jne 0x41173f
test bl, 0x20
je 0x411601
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xf
ja 0x4115ee
mov ecx, eax
push 0x10
push str._no_dead_strip_
call fcn.0041cbc6
jmp 0x4115fc
cmp edx, 0x15
ja 0x411896
mov ecx, eax
push 0x16
push str.weak_private_external
call fcn.0041cbc6
jmp 0x41159e
movups xmm0, xmmword [str._no_dead_strip_]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x10
movzx eax, byte [esp + 4]
test al, al
je 0x41173f
test ebx, 0x100
jne 0x41164e
test ebx, 0x200
jne 0x4116ed
test ebx, 0x400
je 0x41173f
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xb
ja 0x4116b3
mov ecx, eax
push 0xc
push str._cold_func_
call fcn.0041cbc6
jmp 0x41173f
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0x11
ja 0x4116cd
mov ecx, eax
push 0x12
push str._symbol_resolver_
call fcn.0041cbc6
test ebx, 0x200
je 0x41161d
jmp 0x4116ed
cmp edx, 8
ja 0x411929
mov ecx, eax
push 9
push str.external
call fcn.0041cbc6
jmp 0x41159e
cmp edx, 0xd
mov esi, dword [esp]
ja 0x411943
mov ecx, eax
push 0xe
push str.weak_external
call fcn.0041cbc6
jmp 0x41159e
mov dword [ecx + 8], 0x205d636e
mov dword [ecx + 4], 0x75662064
mov dword [ecx], 0x6c6f635b
add dword [eax + 0x10], 0xc
jmp 0x41173f
movups xmm0, xmmword [str._symbol_resolver_]
movups xmmword [ecx], xmm0
mov word [ecx + 0x10], 0x205d
add dword [eax + 0x10], 0x12
test ebx, 0x200
je 0x41161d
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xb
ja 0x41171b
mov ecx, eax
push 0xc
push str._alt_entry_
call fcn.0041cbc6
test ebx, 0x400
jne 0x411629
jmp 0x41173f
mov dword [ecx + 8], 0x205d7972
mov dword [ecx + 4], 0x746e6520
mov dword [ecx], 0x746c615b
add dword [eax + 0x10], 0xc
test ebx, 0x400
jne 0x411629
test bl, 8
je 0x411777
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 7
ja 0x411766
mov ecx, eax
push 8
push str._Thumb_
call fcn.0041cbc6
jmp 0x411777
mov dword [ecx + 4], 0x205d626d
mov dword [ecx], 0x7568545b
add dword [eax + 0x10], 8
call fcn.0041cc44
movzx edx, byte [esi + 0x14]
test dl, 1
je 0x41178f
mov ecx, esi
mov esi, dword [esi + 0x1c]
mov edx, dword [ecx + 0x18]
jmp 0x411794
add esi, 0x15
shr edx, 1
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
movzx edx, byte [esp + 4]
cmp dl, 0xa
jne 0x4119a6
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 5
ja 0x4117c8
mov ecx, eax
push 6
push str.__for
call fcn.0041cbc6
jmp 0x4117d8
mov word [ecx + 4], 0x2072
mov dword [ecx], 0x6f662820
add dword [eax + 0x10], 6
mov esi, dword [esp]
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
cmp dword [esp + 0x68], 0xfffffffc
jae 0x4117f9
call fcn.0041cc44
jmp 0x41183e
mov eax, dword [esi + 0x30]
test eax, eax
je 0x411867
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], ecx
sub esp, 0xc
movsd xmm0, qword [esp + 0x12c]
movsd qword [esp], xmm0
lea eax, [esp + 0x44]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x2c]
call fcn.0041cd8e
mov esi, eax
call fcn.0041cc44
test esi, esi
je 0x4118b6
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 1
ja 0x411859
mov ecx, eax
push 2
push 0x41eedd
jmp 0x41199c
mov word [ecx], 0x293f
add dword [eax + 0x10], 2
jmp 0x4119a1
call fcn.0041cc44
movzx edx, byte [esi + 0x58]
test dl, 1
je 0x4118df
mov ecx, esi
mov esi, dword [esi + 0x60]
mov edx, dword [ecx + 0x5c]
jmp 0x4118e4
movups xmm0, xmmword [str.private_external]
movups xmmword [ecx], xmm0
mov byte [ecx + 0x10], 0x20
add dword [eax + 0x10], 0x11
jmp 0x41159e
movsd xmm0, qword [0x41f00c]
movsd qword [ecx + 0xe], xmm0
movups xmm0, xmmword [str.weak_private_external]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x16
jmp 0x41159e
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edi, ecx
cmp edi, esi
jae 0x411966
mov ecx, eax
push esi
push edx
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
jmp 0x411981
add esi, 0x59
shr edx, 1
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x411993
mov byte [ecx], 0x29
inc dword [eax + 0x10]
jmp 0x4119a1
movups xmm0, xmmword [0x41f037]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.weak_external_automatically_hidden]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x1f], 0x206e6564
add dword [eax + 0x10], 0x23
jmp 0x41159e
mov byte [ecx + 8], 0x20
mov dword [ecx + 4], 0x6c616e72
mov dword [ecx], 0x65747865
add dword [eax + 0x10], 9
jmp 0x41159e
mov word [ecx + 0xc], 0x206c
mov dword [ecx + 8], 0x616e7265
mov dword [ecx + 4], 0x74786520
mov dword [ecx], 0x6b616577
add dword [eax + 0x10], 0xe
jmp 0x41159e
test esi, esi
je 0x411981
push esi
push edx
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
mov eax, edi
add esp, 0xc
add esi, dword [edi + 0x10]
mov dword [edi + 0x10], esi
mov ecx, esi
cmp dword [eax + 0xc], ecx
movzx edx, byte [esp + 4]
je 0x411993
mov byte [ecx], 0x29
inc dword [eax + 0x10]
jmp 0x4119a6
mov ecx, eax
push 1
push 0x41ebf3
call fcn.0041cbc6
movzx edx, byte [esp + 4]
cmp byte [esp + 0xd8], 0
jns 0x4119d1
test dl, dl
sete al
mov ecx, dword [esp + 0xc]
or dword [esp + 0x1c], ecx
sete cl
cmp dl, 0xc
je 0x41238a
and al, cl
jne 0x41238a
cmp byte [0x424a45], 0
mov esi, dword [esp]
mov ebx, dword [esp + 0x6c]
je 0x41250a
mov ecx, dword [esi + 0x38]
test ecx, ecx
je 0x41250a
mov eax, dword [ecx + 4]
add eax, 0xffffffe9
cmp eax, 0xfffffff3
jb 0x41250a
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x74], edx
mov dword [esp + 8], eax
mov dword [esp + 0x70], eax
mov eax, dword [ecx]
sub esp, 0xc
movsd xmm0, qword [esp + 0x7c]
movsd qword [esp + 4], xmm0
mov dword [esp], ecx
mov edi, ecx
lea ecx, [esp + 0x14c]
call dword [eax + 0x40]
movsd xmm0, qword [esp + 0x140]
movsd qword [esp + 0x178], xmm0
mov eax, dword [esp + 0x148]
mov dword [esp + 0x180], eax
mov eax, dword [edi]
lea ecx, [esp + 0x70]
mov dword [esp + 0x18], edi
push edi
call dword [eax + 0xb4]
mov ecx, dword [esp + 0x180]
cmp ecx, dword [esp + 0x78]
jne 0x411a91
mov eax, dword [esp + 0x178]
xor eax, dword [esp + 0x70]
mov edx, dword [esp + 0x17c]
xor edx, dword [esp + 0x74]
or edx, eax
je 0x4121f1
movsd xmm0, qword [esp + 0x178]
movsd qword [esp + 0x70], xmm0
mov eax, dword [ecx]
sub esp, 8
movsd xmm0, qword [esp + 0x78]
movsd qword [esp], xmm0
call dword [eax + 0x50]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], edx
mov eax, dword [esp + 8]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
sub esp, 0xc
movsd xmm0, qword [esp + 0x7c]
movsd qword [esp + 4], xmm0
mov dword [esp], ecx
lea ecx, [esp + 0x194]
call dword [eax + 0x2c]
mov ecx, dword [esp + 0x188]
mov eax, dword [esp + 0x18c]
xorps xmm0, xmm0
movsd qword [esp + 0xe0], xmm0
mov dword [esp + 0xe8], 0
movzx edx, byte [esi + 0x10]
cmp edx, 0x54
je 0x4120a6
cmp edx, 0x74
je 0x4120a6
cmp edx, 0x55
jne 0x41217e
mov edi, dword [esp + 0x18]
mov eax, dword [edi]
lea ecx, [esp + 0x70]
push edi
call dword [eax + 0xb0]
mov eax, dword [edi]
lea esi, [esp + 0x44]
mov ecx, esi
push edi
call dword [eax + 0xb4]
mov eax, dword [esp + 0x78]
mov dword [esp + 0x40], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0x38], xmm0
mov dword [esp + 0x138], eax
movsd qword [esp + 0x130], xmm0
mov eax, dword [esi + 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c8], eax
movsd xmm0, qword [esi]
movsd qword [esp + 0x1c0], xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
jmp 0x411bc8
mov ebx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x138]
mov eax, dword [ecx]
lea edx, [esp + 0x130]
push edx
call dword [eax + 0x44]
mov esi, dword [esp + 0x138]
cmp esi, dword [esp + 0x10]
jne 0x411bf9
mov eax, dword [esp + 0x130]
xor eax, dword [esp + 0x1c0]
mov ecx, dword [esp + 0x134]
xor ecx, dword [esp + 0x1c4]
or ecx, eax
je 0x412366
mov ebx, dword [esp + 0x130]
mov edi, dword [esp + 0x134]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x58], ebx
mov eax, dword [esi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x64]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x114]
call dword [eax + 0x88]
mov dword [esp + 0x5c], edi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x58], ebx
mov eax, dword [esi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x64]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x88]
call dword [eax + 0x8c]
movsd xmm0, qword [esp + 0x108]
movsd qword [esp + 0x70], xmm0
mov eax, dword [esp + 0x70]
xor eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x74]
xor ecx, dword [esp + 0x80]
or ecx, eax
je 0x411bb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edi
mov eax, dword [esi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x7c]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x12c]
call dword [eax + 0x90]
mov eax, dword [esp + 0x120]
mov edx, dword [esp + 0x124]
mov ecx, dword [esp + 0x128]
mov dword [esp + 0xd8], edx
mov dword [esp + 0x74], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x70], eax
mov eax, dword [ecx]
sub esp, 8
movsd xmm0, qword [esp + 0x78]
movsd qword [esp], xmm0
mov dword [esp + 0xc], ecx
call dword [eax + 0x64]
test al, al
mov ebx, dword [esp + 0x6c]
je 0x411bb4
mov dword [esp + 0x5c], edi
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x58], ebx
mov eax, dword [esi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x64]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x7c]
call dword [eax + 0x88]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x58], ebx
mov eax, dword [esi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x64]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea esi, [esp + 0x120]
mov ecx, esi
call dword [eax + 0x8c]
mov eax, dword [esp + 0x78]
mov dword [esp + 0x110], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0x108], xmm0
mov dword [esp + 0x60], eax
movsd qword [esp + 0x58], xmm0
movsd xmm0, qword [esi]
movsd qword [esp + 0x168], xmm0
mov eax, dword [esi + 8]
mov dword [esp + 0x170], eax
nop
mov eax, dword [esp + 0x58]
xor eax, dword [esp + 0x168]
mov ecx, dword [esp + 0x5c]
xor ecx, dword [esp + 0x16c]
or ecx, eax
je 0x411e0c
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x60]
mov dword [esp + 0xfc], ebx
mov dword [esp + 0xf8], edi
mov eax, dword [esi]
sub esp, 0xc
movsd xmm0, qword [esp + 0x104]
movsd qword [esp + 4], xmm0
mov dword [esp], esi
lea ecx, [esp + 0x7c]
call dword [eax + 0x9c]
mov eax, dword [esp + 0x70]
xor eax, dword [esp + 8]
mov ecx, dword [esp + 0x74]
xor ecx, dword [esp + 0x1c]
or ecx, eax
je 0x411e15
mov ecx, dword [esp + 0x60]
mov eax, dword [ecx]
lea edx, [esp + 0x58]
push edx
call dword [eax + 0x94]
jmp 0x411d90
mov esi, dword [esp + 0x6c]
jmp 0x41207d
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0xf8], eax
mov ecx, dword [esp + 4]
mov eax, dword [ecx]
sub esp, 8
movsd xmm0, qword [esp + 0x100]
movsd qword [esp], xmm0
call dword [eax + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0xfc], ebx
mov dword [esp + 0xf8], edi
mov eax, dword [esi]
sub esp, 8
movsd xmm0, qword [esp + 0x100]
movsd qword [esp], xmm0
mov ecx, esi
call dword [eax + 0x98]
add eax, dword [esp + 4]
adc edx, dword [esp + 0xc]
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], edx
mov eax, dword [esp + 0xf0]
mov dword [esp + 0x1dc], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x1d8], eax
sub esp, 0x18
movups xmm0, xmmword [esp + 0x1e8]
movups xmmword [esp + 8], xmm0
mov esi, dword [esp + 0x30]
mov dword [esp + 4], esi
lea eax, [esp + 0x210]
mov dword [esp], eax
lea ecx, [esp + 0x88]
call fcn.0041ccc8
test byte [esp + 0xd0], 1
jne 0x411ef9
movzx eax, byte [esp + 0x70]
test al, 1
mov esi, dword [esp]
mov ebx, dword [esp + 0x6c]
je 0x411f68
mov ecx, dword [esp + 0x74]
jmp 0x411f6c
mov eax, dword [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x13c], eax
mov ecx, esi
call fcn.0041ce0c
mov dword [esp + 0x1bc], 0
mov dword [esp + 0x1b8], 0
sub esp, 0xc
movsd xmm0, qword [esp + 0x1c4]
movsd qword [esp + 4], xmm0
mov dword [esp], edx
lea ecx, [esp + 0x148]
mov edx, eax
call fcn.0040b080
add esp, 0xc
mov ecx, dword [esp + 0x13c]
test ecx, ecx
mov esi, dword [esp]
mov ebx, dword [esp + 0x6c]
je 0x411fde
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x411fde
mov ecx, eax
shr ecx, 1
cmp ecx, 9
jne 0x411f91
lea ecx, [esp + 0x71]
test al, 1
je 0x411f7d
mov ecx, dword [esp + 0x78]
push 9
push str._invalid_
push ecx
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x411fde
test byte [esp + 0x64], 1
je 0x411fa7
push dword [esp + 0xe8]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0xe8], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0xe0], xmm0
mov word [esp + 0x70], 0
mov al, 1
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x100], eax
jmp 0x411fe6
mov dword [esp + 0xc], 0
test byte [esp + 0xd0], 1
jne 0x41200a
test byte [esp + 0x88], 1
jne 0x412021
test byte [esp + 0x7c], 1
jne 0x412037
test byte [esp + 0x70], 1
jne 0x41204d
jmp 0x412059
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x70], 0
test ecx, ecx
je 0x412059
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x412059
push dword [esp + 0x90]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x7c], 1
je 0x412001
push dword [esp + 0x84]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x70], 1
je 0x412059
push dword [esp + 0x78]
call sub.libc.dll_operator_delete_void_
add esp, 4
cmp byte [esp + 0xc], 0
je 0x4124f1
mov esi, ebx
movzx eax, byte [esp + 0xe0]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x50], eax
mov ebx, dword [esp + 0x68]
mov ecx, ebx
shr cl, 1
mov eax, ebx
and al, 1
movzx ecx, cl
mov edx, dword [esp + 0x50]
cmove edx, ecx
mov dword [esp + 0x64], ebx
test edx, edx
mov ebx, esi
je 0x411bb4
jmp 0x412373
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 0x44], eax
sub esp, 0x18
movups xmm0, xmmword [esp + 0x50]
movups xmmword [esp + 8], xmm0
mov edi, dword [esp + 0x30]
mov dword [esp + 4], edi
lea eax, [esp + 0x210]
mov dword [esp], eax
lea ecx, [esp + 0x88]
call fcn.0041ccc8
test byte [esp + 0xd0], 1
jne 0x41210f
movzx eax, byte [esp + 0x70]
test al, 1
je 0x41220c
mov ecx, dword [esp + 0x74]
jmp 0x412210
mov eax, dword [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x120], eax
mov ecx, edi
call fcn.0041ce0c
mov dword [esp + 0x10c], 0
mov dword [esp + 0x108], 0
sub esp, 0xc
movsd xmm0, qword [esp + 0x114]
movsd qword [esp + 4], xmm0
mov dword [esp], edx
lea ecx, [esp + 0x12c]
mov edx, eax
call fcn.0040b080
add esp, 0xc
mov ecx, dword [esp + 0x120]
test ecx, ecx
je 0x41226c
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x41226c
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 0x44], eax
sub esp, 0x18
movups xmm0, xmmword [esp + 0x50]
movups xmmword [esp + 8], xmm0
mov edi, dword [esp + 0x30]
mov dword [esp + 4], edi
lea eax, [esp + 0x210]
mov dword [esp], eax
lea ecx, [esp + 0x88]
call fcn.0041ccce
test byte [esp + 0xa8], 1
jne 0x4122f7
movzx eax, byte [esp + 0x90]
test al, 1
je 0x4123d7
mov eax, dword [esp + 0x94]
jmp 0x4123d9
mov dword [esp + 0xf4], 0xffffffff
mov dword [esp + 0xf0], 0xffffffff
jmp 0x411ac1
mov ecx, eax
shr ecx, 1
cmp ecx, 9
jne 0x412235
lea ecx, [esp + 0x71]
test al, 1
je 0x412221
mov ecx, dword [esp + 0x78]
push 9
push str._invalid_
push ecx
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x41226c
mov eax, dword [esp + 0xac]
mov dword [esp + 0x100], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0xe0], xmm0
mov eax, dword [esp + 0x78]
mov dword [esp + 0xe8], eax
mov word [esp + 0x70], 0
mov al, 1
mov dword [esp + 8], eax
jmp 0x412274
mov dword [esp + 8], 0
test byte [esp + 0xd0], 1
jne 0x412298
test byte [esp + 0x88], 1
jne 0x4122af
test byte [esp + 0x7c], 1
jne 0x4122c5
test byte [esp + 0x70], 1
jne 0x4122db
jmp 0x4122e7
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x70], 0
test ecx, ecx
je 0x4122e7
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x4122e7
push dword [esp + 0x90]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x7c], 1
je 0x41228f
push dword [esp + 0x84]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x70], 1
je 0x4122e7
push dword [esp + 0x78]
call sub.libc.dll_operator_delete_void_
add esp, 4
cmp byte [esp + 8], 0
jne 0x412474
jmp 0x4124f1
mov eax, dword [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x120], eax
mov ecx, edi
call fcn.0041ce0c
mov dword [esp + 0x10c], 0
mov dword [esp + 0x108], 0
sub esp, 0xc
movsd xmm0, qword [esp + 0x114]
movsd qword [esp + 4], xmm0
mov dword [esp], edx
lea ecx, [esp + 0x12c]
mov edx, eax
call fcn.0040b080
add esp, 0xc
mov ecx, dword [esp + 0x120]
test ecx, ecx
je 0x412415
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x412415
mov ecx, dword [esp + 0x68]
mov eax, ecx
and al, 1
shr cl, 1
movzx ecx, cl
test al, al
cmovne ecx, dword [esp + 0x50]
test ecx, ecx
mov esi, dword [esp]
jne 0x412474
jmp 0x4124f1
movzx esi, bx
shr esi, 8
je 0x4119d1
cmp esi, 0xfe
je 0x412549
cmp esi, 0xff
jne 0x41256e
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0x11
ja 0x4125e1
mov ecx, eax
push 0x12
push str.__from_executable_
call fcn.0041cbc6
jmp 0x4119d1
shr eax, 1
test eax, eax
je 0x412415
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x100], eax
lea eax, [esp + 0x71]
movsd xmm0, qword [eax + 0x1f]
movsd qword [esp + 0xe0], xmm0
mov eax, dword [eax + 0x27]
mov dword [esp + 0xe8], eax
mov word [esp + 0x90], 0
mov dl, 1
jmp 0x412417
xor edx, edx
test byte [esp + 0xa8], 1
jne 0x412457
test byte [esp + 0x90], 1
je 0x41243e
push dword [esp + 0x98]
mov edi, edx
call sub.libc.dll_operator_delete_void_
mov edx, edi
add esp, 4
test byte [esp + 0x70], 1
je 0x412470
push dword [esp + 0x78]
mov edi, edx
call sub.libc.dll_operator_delete_void_
mov edx, edi
add esp, 4
jmp 0x412470
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x70], 0
test ecx, ecx
je 0x412470
mov eax, dword [ecx]
mov edi, edx
call dword [eax + 4]
mov edx, edi
test dl, dl
je 0x4124f1
call fcn.0041cc44
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x41248c
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 9
jmp 0x412495
mov ecx, eax
push 9
call fcn.0041cbcc
movzx edx, byte [esp + 0xe0]
test dl, 1
je 0x4124b2
mov esi, dword [esp + 0xe8]
mov edx, dword [esp + 0xe4]
jmp 0x4124bb
shr edx, 1
lea esi, [esp + 0xe1]
mov ecx, eax
push edx
push esi
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x4124d7
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0x3a
jmp 0x4124e0
mov ecx, eax
push 0x3a
call fcn.0041cbcc
mov esi, dword [esp]
mov ecx, eax
push dword [esp + 0x100]
call fcn.0041cbea
test byte [esp + 0xe0], 1
je 0x41250a
push dword [esp + 0xe8]
call sub.libc.dll_operator_delete_void_
add esp, 4
call fcn.0041cc44
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x412530
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0xa
test byte [esp + 0x28], 1
je 0x40fd60
jmp 0x40fd50
mov ecx, eax
push 0xa
call fcn.0041cbcc
test byte [esp + 0x28], 1
je 0x40fd60
jmp 0x40fd50
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0x17
ja 0x4125c1
mov ecx, eax
push 0x18
push str.__dynamically_looked_up_
call fcn.0041cbc6
jmp 0x4119d1
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
cmp dword [esp + 0x68], 0xfffffffc
mov ecx, dword [esp + 0x20]
jb 0x41259f
lea eax, [esi - 1]
lea edx, [esp + 0x38]
push edx
push eax
call fcn.0041cdb8
test eax, eax
je 0x412659
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0x1a
ja 0x4125fa
mov ecx, eax
push 0x1b
push str.__from_bad_library_ordinal
call fcn.0041cbc6
jmp 0x412613
movsd xmm0, qword [0x41f10a]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.__dynamically_looked_up_]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x18
jmp 0x4119d1
movups xmm0, xmmword [str.__from_executable_]
movups xmmword [ecx], xmm0
mov word [ecx + 0x10], 0x2965
add dword [eax + 0x10], 0x12
jmp 0x4119d1
movups xmm0, xmmword [0x41f11e]
movups xmmword [ecx + 0xb], xmm0
movups xmm0, xmmword [str.__from_bad_library_ordinal]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x1b
mov ecx, eax
push esi
call fcn.0041cbea
jmp 0x411141
mov word [ecx + 4], 0x2029
mov dword [ecx], 0x3f2c3f28
add dword [eax + 0x10], 6
test byte [esp + 0x7c], 1
je 0x411448
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x70], 0
test ecx, ecx
je 0x411448
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x411448
call fcn.0041cc44
mov ecx, eax
push str.__from
call fcn.00403760
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edi, ecx
cmp edi, esi
jb 0x41111f
mov edi, eax
test esi, esi
je 0x41269d
push esi
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, edi
add dword [edi + 0x10], esi
jmp 0x411141
mov eax, edi
jmp 0x411141
mov ebx, dword [esp + 0xdc]
mov eax, dword [ebx]
mov esi, dword [ebx + 4]
mov edi, eax
cmp esi, eax
jne 0x4126e7
mov esi, edi
mov dword [ebx + 4], esi
cmp byte [esp + 0x29c], 0
je 0x4126d1
lea ecx, [esp + 0x1f8]
call fcn.0041ccda
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
add esi, 0xffffff98
cmp esi, edi
je 0x4126b6
test byte [esi - 0x10], 1
jne 0x412700
test byte [esi - 0x54], 1
je 0x4126e0
jmp 0x412711
push dword [esi - 8]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esi - 0x54], 1
je 0x4126e0
push dword [esi - 0x4c]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x4126e0
cmp ecx, 2
mov eax, str._lld
mov ecx, str._08lld
cmove ecx, eax
mov dword [esp + 0x24], ecx
mov eax, 0x41eea2
mov dword [esp + 0x54], str.________
mov esi, dword [ebx]
mov ebx, dword [ebx + 4]
cmp esi, ebx
jne 0x40fd47
mov ebx, dword [esp + 0xdc]
mov dword [ebx + 4], esi
cmp byte [esp + 0x29c], 0
jne 0x4126c5
jmp 0x4126d1
cmp eax, 1
jne case.0x40fcb9.3
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
mov ebx, edi
cmp edx, 0xe
ja 0x412799
mov ecx, eax
push 0xf
push str._n_nSymbols_from
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
jmp 0x4127bd
mov dword [ecx + 0xb], 0x206d6f72
mov dword [ecx + 8], 0x72662073
mov dword [ecx + 4], 0x6c6f626d
mov dword [ecx], 0x79530a0a
mov ecx, dword [eax + 0x10]
add ecx, 0xf
mov dword [eax + 0x10], ecx
mov edx, dword [0x424a68]
mov esi, dword [0x424a6c]
mov edi, dword [eax + 0xc]
sub edi, ecx
cmp edi, esi
jae 0x4127e0
mov ecx, eax
push esi
push edx
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
jmp 0x4127fb
test esi, esi
je 0x4127fb
push esi
push edx
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
mov eax, edi
add esp, 0xc
add esi, dword [edi + 0x10]
mov dword [edi + 0x10], esi
mov ecx, esi
mov edi, ebx
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 2
mov esi, dword [esp + 0xdc]
ja 0x41281e
mov ecx, eax
push 3
push 0x41eda3
call fcn.0041cbc6
jmp 0x41282b
mov byte [ecx + 2], 0xa
mov word [ecx], 0xa3a
add dword [eax + 0x10], 3
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x20]
mov ebx, eax
call fcn.0041cc44
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
test bl, bl
je 0x41289a
cmp edx, 0x36
mov ebx, esi
ja 0x412969
mov ecx, eax
push 0x37
push str.Name__________________Value___________Class________Type
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 0x27
jbe 0x4129ad
movsd xmm0, qword [0x41edff]
movsd qword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x41edef]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str._________Size_____________Line__Section_n]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x28
jmp case.0x40fcb9.3
cmp edx, 0x2e
mov ebx, esi
ja 0x4129c0
mov ecx, eax
push 0x2f
push str.Name__________________Value___Class________Type
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 0x1f
jbe 0x4129f7
movups xmm0, xmmword [0x41ee48]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str._________Size_____Line__Section_n]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x20
jmp case.0x40fcb9.3
mov ebx, edi
mov ecx, eax
push 0xa
call fcn.0041cbcc
mov edx, dword [0x424a68]
mov esi, dword [0x424a6c]
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edi, ecx
cmp edi, esi
jae 0x412913
mov ecx, eax
push esi
push edx
call fcn.0041cbc6
mov ecx, dword [eax + 0x10]
jmp 0x41292e
test esi, esi
je 0x41292e
push esi
push edx
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
mov eax, edi
add esp, 0xc
add esi, dword [edi + 0x10]
mov dword [edi + 0x10], esi
mov ecx, esi
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 1
mov edi, ebx
ja 0x412954
mov ecx, eax
push 2
push 0x41ecb6
call fcn.0041cbc6
mov ebx, dword [esp + 0xdc]
jmp case.0x40fcb9.3
mov word [ecx], 0xa3a
add dword [eax + 0x10], 2
mov ebx, dword [esp + 0xdc]
jmp case.0x40fcb9.3
movsd xmm0, qword [0x41edd6]
movsd qword [ecx + 0x2f], xmm0
movups xmm0, xmmword [0x41edc7]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x41edb7]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.Name__________________Value___________Class________Type]
movups xmmword [ecx], xmm0
mov ecx, dword [eax + 0x10]
add ecx, 0x37
mov dword [eax + 0x10], ecx
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 0x27
ja 0x41286f
mov ecx, eax
push 0x28
push str._________Size_____________Line__Section_n
call fcn.0041cbc6
jmp case.0x40fcb9.3
movups xmm0, xmmword [0x41ee27]
movups xmmword [ecx + 0x1f], xmm0
movups xmm0, xmmword [0x41ee18]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.Name__________________Value___Class________Type]
movups xmmword [ecx], xmm0
mov ecx, dword [eax + 0x10]
add ecx, 0x2f
mov dword [eax + 0x10], ecx
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 0x1f
ja 0x4128c4
mov ecx, eax
push 0x20
push str._________Size_____Line__Section_n
call fcn.0041cbc6
jmp case.0x40fcb9.3