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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x340
lea eax, [esp + 0x358]
lea edx, [esp + 0x354]
lea ecx, [esp + 0x2e8]
push 1
push eax
push edx
call fcn.0041bd2a
test byte [0x423268], 1
je 0x40146f
push dword [0x423270]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov word [0x423268], 0x6c12
mov dword [0x42326e], 0x203a6372
mov dword [0x42326a], 0x2d6d766c
mov byte [0x423272], 0
mov ecx, dword [esp + 0x358]
lea esi, [ecx + 4]
mov ebp, dword [esp + 0x354]
mov ebx, esi
cmp ebp, 1
jne 0x4014c0
lea edi, [ecx + ebp*4]
mov eax, ebx
sub eax, esi
cmp ebx, edi
je 0x401529
add ebx, 4
sub edi, ebx
sar edi, 2
jmp 0x40152d
mov dword [esp + 0x120], ecx
lea edi, [ebp*4 - 4]
mov dword [esp], esi
mov ebx, esi
jmp 0x4014e8
add ebx, 4
add edi, 0xfffffffc
je 0x401512
mov esi, dword [ebx]
test esi, esi
je 0x4014e0
push esi
call sub.msvcrt.dll_strlen
add esp, 4
cmp eax, 2
jne 0x4014e0
movzx eax, word [esi]
cmp eax, 0x2d2d
jne 0x4014e0
mov esi, dword [esp]
mov ecx, dword [esp + 0x120]
jmp 0x4014ab
lea eax, [ebp*4 - 4]
xor ebx, ebx
xor edi, edi
mov esi, dword [esp]
mov ecx, dword [esp + 0x120]
jmp 0x40152d
xor ebx, ebx
xor edi, edi
sar eax, 2
mov edx, dword [ecx]
lea ebp, [esp + 0x130]
mov ecx, ebp
push edi
push ebx
push eax
push esi
call fcn.00403790
add esp, 0x10
test byte [esp + 0x168], 1
jne 0x401595
mov eax, dword [ebp + 0x40]
mov dword [esp + 0x20], eax
movq xmm0, qword [ebp + 0x38]
movq qword [esp + 0x18], xmm0
cmp dword [esp + 0x164], 0
je 0x4015f9
lea eax, [esp + 0x158]
lea ecx, [esp + 0x18]
push eax
call fcn.0041bde4
cmp dword [esp + 0x174], 2
je 0x4026b6
jmp 0x402d02
mov ebx, dword [esp + 0x16c]
mov esi, dword [esp + 0x170]
cmp ebx, 0xa
ja 0x4015b6
lea eax, [esp + 0x19]
mov ecx, ebx
add cl, bl
mov byte [esp + 0x18], cl
jmp 0x4015df
cmp ebx, 0xfffffff0
jae 0x40337d
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x20], eax
add edi, 2
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
cmp dword [esp + 0x164], 0
jne 0x401571
cmp dword [esp + 0x174], 2
jne 0x4016c3
mov dword [esp + 0x1a8], 0x41c061
mov word [esp + 0x1b8], 0x103
lea ecx, [esp + 0x4c]
lea esi, [esp + 0x1a8]
mov edx, esi
push 3
push 0x41c064
call fcn.00406180
add esp, 8
test byte [esp + 0x18], 1
je 0x40164b
push dword [esp + 0x20]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov eax, dword [esp + 0x54]
mov dword [esp + 0x20], eax
movq xmm0, qword [esp + 0x4c]
movq qword [esp + 0x18], xmm0
mov word [esp + 0x5c], 0x104
lea eax, [esp + 0x18]
mov dword [esp + 0x4c], eax
cmp byte [0x4231d4], 0
je 0x4016a4
mov word [esp + 0x1b8], 0x105
mov eax, dword [0x423148]
mov dword [esp + 0x1a8], eax
mov eax, dword [0x42314c]
mov dword [esp + 0x1ac], eax
push 1
push esi
call fcn.0041bcac
add esp, 8
mov dword [0x42314c], 0
lea ecx, [esp + 0x4c]
push 0x423148
call fcn.0041bd72
mov byte [0x4231d4], 1
test byte [esp + 0x158], 1
jne 0x40174b
lea eax, [esp + 0x158]
mov ecx, dword [eax + 8]
mov dword [esp + 0x78], ecx
movq xmm0, qword [eax]
movq qword [esp + 0x70], xmm0
test byte [esp + 0x18], 1
jne 0x4017ac
mov eax, dword [esp + 0x20]
mov dword [esp + 0xd4], eax
movq xmm0, qword [esp + 0x18]
movq qword [esp + 0xcc], xmm0
mov eax, dword [esp + 0x358]
mov edi, dword [eax]
test byte [esp + 0x70], 1
jne 0x40181f
mov eax, dword [esp + 0x78]
mov dword [esp + 0x108], eax
movq xmm0, qword [esp + 0x70]
movq qword [esp + 0x100], xmm0
cmp byte [esp + 0x130], 0
jne 0x40188c
jmp 0x401e82
mov ebx, dword [esp + 0x15c]
mov esi, dword [esp + 0x160]
cmp ebx, 0xa
ja 0x40176c
lea eax, [esp + 0x71]
mov ecx, ebx
add cl, bl
mov byte [esp + 0x70], cl
jmp 0x401795
cmp ebx, 0xfffffff0
jae 0x4036cf
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x78], eax
add edi, 2
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
test byte [esp + 0x18], 1
je 0x4016f0
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
cmp ebx, 0xa
ja 0x4017cd
lea eax, [esp + 0xcd]
mov ecx, ebx
add cl, bl
mov byte [esp + 0xcc], cl
jmp 0x4017ff
cmp ebx, 0xfffffff0
jae 0x4036d8
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0xd4], eax
add edi, 2
mov dword [esp + 0xcc], edi
mov dword [esp + 0xd0], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
mov eax, dword [esp + 0x358]
mov edi, dword [eax]
test byte [esp + 0x70], 1
je 0x40171e
mov ebx, dword [esp + 0x74]
mov esi, dword [esp + 0x78]
cmp ebx, 0xa
ja 0x401840
lea eax, [esp + 0x101]
mov ecx, ebx
add cl, bl
mov byte [esp + 0x100], cl
jmp 0x401872
cmp ebx, 0xfffffff0
jae 0x4036e4
mov ebp, ebx
or ebp, 0xf
lea eax, [ebp + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x108], eax
add ebp, 2
mov dword [esp + 0x100], ebp
mov dword [esp + 0x104], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
cmp byte [esp + 0x130], 0
je 0x401e82
mov dword [esp + 0x1a8], str.preproc
mov word [esp + 0x1b8], 0x103
lea ebx, [esp + 0x24]
lea esi, [esp + 0x1a8]
mov ecx, ebx
mov edx, esi
push 2
push 0x41c061
call fcn.00406180
add esp, 8
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], ebx
cmp byte [0x423264], 0
je 0x401900
mov word [esp + 0x1b8], 0x105
mov eax, dword [0x4231d8]
mov dword [esp + 0x1a8], eax
mov eax, dword [0x4231dc]
mov dword [esp + 0x1ac], eax
push 1
push esi
call fcn.0041bcac
add esp, 8
mov dword [0x4231dc], 0
lea esi, [esp + 0x4c]
mov ecx, esi
push 0x4231d8
call fcn.0041bd72
mov byte [0x423264], 1
movzx eax, byte [esp + 0x70]
test al, 1
je 0x40194e
mov eax, dword [esp + 0x78]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x74]
movzx ebx, byte [esp + 0x24]
test bl, 1
mov dword [esp], eax
jne 0x401968
shr ebx, 1
lea ebp, [esp + 0x25]
jmp 0x401970
shr eax, 1
lea ecx, [esp + 0x71]
mov dword [esp + 0x120], ecx
movzx ebx, byte [esp + 0x24]
test bl, 1
mov dword [esp], eax
je 0x401946
mov ebp, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp + 0xc], 0
cmp byte [esp + 0x131], 0
jne 0x4019a6
mov eax, dword [esp + 0x140]
cmp eax, dword [esp + 0x144]
je 0x402f3e
lea ecx, [esp + 4]
push str.clang
call fcn.0041bdcc
movzx eax, byte [esp + 4]
test al, 1
je 0x4019dd
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 8]
movzx edx, byte [esp + 0x134]
test dl, 1
jne 0x4019f0
shr edx, 1
lea esi, [esp + 0x135]
jmp 0x4019fe
shr eax, 1
lea ecx, [esp + 5]
movzx edx, byte [esp + 0x134]
test dl, 1
je 0x4019d2
mov esi, dword [esp + 0x13c]
mov edx, dword [esp + 0x138]
lea edi, [esp + 0x1b4]
mov dword [esp + 0x1a8], edi
mov dword [esp + 0x1b0], 8
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x1bc], str.__driver_modegcc
mov dword [esp + 0x1c0], 0x11
mov dword [esp + 0x1c4], str._target
mov dword [esp + 0x1c8], 7
mov dword [esp + 0x1cc], esi
mov dword [esp + 0x1d0], edx
mov dword [esp + 0x1d4], 0x41d946
mov dword [esp + 0x1d8], 2
mov dword [esp + 0x1dc], 0x41d949
mov dword [esp + 0x1e0], 3
mov dword [esp + 0x1e4], str._DRC_INVOKED
mov dword [esp + 0x1e8], 0xc
mov dword [esp + 0x1ac], 7
mov ecx, dword [esp + 0x140]
mov edi, dword [esp + 0x144]
cmp ecx, edi
je 0x402ee3
mov dword [esp + 0x1a0], ebp
mov dword [esp + 0xe4], ebx
mov dword [esp + 0x1ac], 0
xor eax, eax
nop dword [eax]
movzx ebx, byte [ecx]
lea esi, [ecx + 1]
test bl, 1
je 0x401b00
mov ebp, dword [ecx + 8]
mov ebx, dword [ecx + 4]
jmp 0x401b04
shr ebx, 1
mov ebp, esi
lea edx, [eax + 1]
cmp edx, dword [esp + 0x1b0]
ja 0x401b38
mov ecx, dword [esp + 0x1a8]
mov dword [ecx + eax*8], ebp
mov dword [ecx + eax*8 + 4], ebx
mov eax, dword [esp + 0x1ac]
inc eax
mov dword [esp + 0x1ac], eax
add esi, 0xb
mov ecx, esi
cmp esi, edi
jne 0x401ae0
jmp 0x401b58
lea ecx, [esp + 0x1a8]
push 8
push edx
lea eax, [esp + 0x1bc]
push eax
call fcn.0041bc16
mov eax, dword [esp + 0x1ac]
jmp 0x401b10
mov ecx, dword [esp + 0x1b0]
mov ebx, dword [esp + 0xe4]
mov ebp, dword [esp + 0x1a0]
lea edx, [eax + 1]
cmp edx, ecx
ja 0x402ef8
mov ecx, dword [esp + 0x1a8]
mov edx, dword [esp + 0x120]
mov dword [ecx + eax*8], edx
mov edx, dword [esp]
mov dword [ecx + eax*8 + 4], edx
mov eax, dword [esp + 0x1ac]
lea ecx, [eax + 1]
mov dword [esp + 0x1ac], ecx
add eax, 2
cmp eax, dword [esp + 0x1b0]
ja 0x402fc5
mov eax, dword [esp + 0x1a8]
mov dword [eax + ecx*8], 0x41d95a
mov dword [eax + ecx*8 + 4], 2
mov eax, dword [esp + 0x1ac]
lea ecx, [eax + 1]
mov dword [esp + 0x1ac], ecx
add eax, 2
cmp eax, dword [esp + 0x1b0]
ja 0x402fe8
mov eax, dword [esp + 0x1a8]
mov dword [eax + ecx*8], ebp
mov dword [eax + ecx*8 + 4], ebx
mov edi, dword [esp + 0x1ac]
inc edi
mov dword [esp + 0x1ac], edi
mov eax, dword [esp + 0x14c]
mov edx, dword [esp + 0x150]
cmp eax, edx
je 0x401cab
lea ecx, [esp + 0x1a8]
nop word cs:[eax + eax]
movzx ebx, byte [eax]
lea ebp, [eax + 1]
test bl, 1
je 0x401c50
mov esi, dword [eax + 8]
mov ebx, dword [eax + 4]
jmp 0x401c54
shr ebx, 1
mov esi, ebp
lea eax, [edi + 1]
cmp eax, dword [esp + 0x1b0]
ja 0x401c88
mov eax, dword [esp + 0x1a8]
mov dword [eax + edi*8], esi
mov dword [eax + edi*8 + 4], ebx
mov edi, dword [esp + 0x1ac]
inc edi
mov dword [esp + 0x1ac], edi
add ebp, 0xb
mov eax, ebp
cmp ebp, edx
jne 0x401c30
jmp 0x401cab
mov dword [esp], edx
push 8
push eax
lea eax, [esp + 0x1bc]
push eax
mov edi, ecx
call fcn.0041bc16
mov ecx, edi
mov edx, dword [esp]
mov edi, dword [esp + 0x1ac]
jmp 0x401c60
movzx eax, byte [esp + 0x131]
or al, byte [esp + 0x179]
je 0x401d72
test edi, edi
je 0x401d46
mov esi, dword [esp + 0x1a8]
shl edi, 3
xor ebx, ebx
jmp 0x401d29
mov byte [ecx], 0x20
inc dword [eax + 0x10]
call fcn.0041bce8
movsd xmm0, qword [esi + ebx]
movsd qword [esp + 0xac], xmm0
movzx ecx, byte [esp + 0x131]
sub esp, 0x10
movq xmm0, qword [esp + 0xbc]
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], ecx
mov dword [esp], eax
call fcn.0041bcdc
add esp, 0x10
add ebx, 8
cmp edi, ebx
je 0x401d46
call fcn.0041bce8
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
jne 0x401ce0
mov ecx, eax
push 1
push 0x41d95d
call fcn.0041bbe0
jmp 0x401ce6
call fcn.0041bce8
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x402f1b
mov byte [ecx], 0xa
inc dword [eax + 0x10]
cmp byte [esp + 0x131], 0
jne 0x402f37
mov edi, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a8]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edi
mov byte [esp + 0x7c], 0
mov byte [esp + 0x84], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
sub esp, 0x3c
movsd xmm0, qword [esp + 0xcc]
movsd qword [esp + 0x1c], xmm0
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x18], eax
movsd xmm0, qword [esp + 0xb8]
movsd qword [esp + 0x10], xmm0
movsd xmm0, qword [esp + 0xdc]
movsd qword [esp + 8], xmm0
movq xmm0, qword [esp + 0xfc]
movq qword [esp], xmm0
pxor xmm0, xmm0
movdqu xmmword [esp + 0x24], xmm0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
call fcn.0041bc7c
add esp, 0x3c
test eax, eax
jne 0x403457
mov eax, dword [esp + 0x1a8]
lea ecx, [esp + 0x1b4]
cmp eax, ecx
je 0x401e4b
push eax
call sub.msvcrt.dll_free
add esp, 4
test byte [esp + 4], 1
je 0x401e5e
push dword [esp + 0xc]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea ecx, [esp + 0x100]
lea eax, [esp + 0x24]
push eax
call fcn.0041bde4
test byte [esp + 0x24], 1
je 0x401e82
push dword [esp + 0x2c]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov word [esp + 0x1b8], 0x104
lea esi, [esp + 0x100]
mov dword [esp + 0x1a8], esi
mov word [esp + 0x1a4], 0
sub esp, 0x18
lea ebx, [esp + 0x1c0]
mov dword [esp + 4], ebx
lea eax, [esp + 0xd8]
mov dword [esp], eax
mov word [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
call fcn.0041bbf2
add esp, 0x18
test byte [esp + 0xc8], 1
jne 0x4032cd
mov esi, dword [esp + 0xc0]
mov dword [esp + 0xc0], 0
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
sub ecx, eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
sub esp, 0xc
movsd xmm0, qword [esp + 0xac]
movsd qword [esp + 4], xmm0
lea eax, [esp + 0x88]
mov dword [esp], eax
call fcn.0040f210
add esp, 0xc
movzx eax, byte [esp + 0x7c]
mov ecx, eax
shr ecx, 1
test al, 1
lea eax, [esp + 0x7d]
cmovne eax, dword [esp + 0x84]
mov dword [esp + 0x90], eax
cmovne ecx, dword [esp + 0x80]
mov dword [esp + 0x94], ecx
sub esp, 0xc
movq xmm0, qword [esp + 0x9c]
movq qword [esp + 4], xmm0
lea ebp, [esp + 0x58]
mov dword [esp], ebp
call fcn.0041a3b0
add esp, 0xc
test byte [esp + 0x58], 1
mov dword [esp + 0xe4], esi
jne 0x401fd4
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
movq xmm0, qword [esp + 0x50]
movdqu xmmword [esp + 0x120], xmm0
cmp byte [esp + 0x179], 0
jne 0x40200c
movzx ebx, byte [esp + 0x70]
test bl, 1
je 0x4022c1
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x74]
jmp 0x4022c7
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x4c], 0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x40346f
movq xmm0, qword [esp + 0x50]
movdqu xmmword [esp + 0x120], xmm0
mov dword [esp], 0
cmp byte [esp + 0x179], 0
je 0x401fb9
mov dword [esp + 0x1a8], 0x41d7aa
mov word [esp + 0x1b8], 0x103
mov dword [esp + 0x1bc], 0x41d7b2
mov word [esp + 0x1cc], 0x103
mov dword [esp + 0x1d0], 0x41d7b6
mov word [esp + 0x1e0], 0x103
mov dword [esp + 0x1e4], 0x41d7bd
mov word [esp + 0x1f4], 0x103
mov dword [esp + 0x1f8], 0x41d7c8
mov word [esp + 0x208], 0x103
mov dword [esp + 0x20c], 0x41d7d4
mov word [esp + 0x21c], 0x103
mov dword [esp + 0x220], str.BlockBegin
mov word [esp + 0x230], 0x103
mov dword [esp + 0x234], str.BlockEnd
mov word [esp + 0x244], 0x103
mov byte [esp + 0x259], 1
mov dword [esp + 0x248], str.Comma
mov byte [esp + 0x258], 3
mov dword [esp + 0x25c], str.Plus
mov word [esp + 0x26c], 0x103
mov dword [esp + 0x270], str.Minus
mov word [esp + 0x280], 0x103
mov dword [esp + 0x284], str.Pipe
mov word [esp + 0x294], 0x103
mov dword [esp + 0x298], 0x41d80b
mov word [esp + 0x2a8], 0x103
mov dword [esp + 0x2ac], str.Tilde
mov word [esp + 0x2bc], 0x103
mov dword [esp + 0x2c0], str.LeftParen
mov word [esp + 0x2d0], 0x103
mov dword [esp + 0x2d4], str.RightParen
mov word [esp + 0x2e4], 0x103
movdqu xmm0, xmmword [esp + 0x120]
movd ebx, xmm0
cmp dword [esp], ebx
je 0x4022af
mov ebp, dword [esp]
jmp 0x402199
mov ecx, eax
push 1
push 0x41ce9f
call fcn.0041bbe0
add ebp, 0xc
cmp ebp, ebx
je 0x4022af
call fcn.0041bce8
mov esi, eax
mov ecx, ebp
call fcn.0041a390
lea eax, [eax + eax*4]
lea ecx, [esp + eax*4]
add ecx, 0x1a8
push esi
call fcn.0041bd6c
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
sub ecx, eax
cmp ecx, 1
ja 0x4021e0
mov ecx, esi
push 2
push 0x41d82a
call fcn.0041bbe0
mov esi, eax
jmp 0x4021e9
mov word [eax], 0x203a
add dword [esi + 0x10], 2
mov ecx, ebp
call fcn.0041a380
mov edi, edx
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
sub edx, ecx
cmp edx, edi
jae 0x402210
mov ecx, esi
push edi
push eax
call fcn.0041bbe0
jmp 0x402222
test edi, edi
je 0x402222
push edi
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi + 0x10], edi
mov ecx, ebp
call fcn.0041a390
cmp eax, 1
jne 0x40228d
call fcn.0041bce8
mov esi, eax
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub ecx, eax
cmp ecx, 0xd
ja 0x402260
mov ecx, esi
push 0xe
push str.__int_value_
call fcn.0041bbe0
mov esi, eax
jmp 0x40227e
mov word [eax + 0xc], 0x203d
mov dword [eax + 8], 0x2065756c
mov dword [eax + 4], 0x61762074
mov dword [eax], 0x6e69203b
add dword [esi + 0x10], 0xe
mov ecx, ebp
call fcn.0041a2e0
mov ecx, esi
push eax
call fcn.0041bbec
call fcn.0041bce8
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0xc], ecx
je 0x402180
mov byte [ecx], 0xa
inc dword [eax + 0x10]
add ebp, 0xc
cmp ebp, ebx
jne 0x402199
lea ebp, [esp + 0x4c]
movzx ebx, byte [esp + 0x70]
test bl, 1
jne 0x401fc7
shr ebx, 1
lea esi, [esp + 0x71]
lea edx, [esp + 0x1b4]
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1b0], 0x80
cmp ebx, 0x81
jb 0x402313
lea ecx, [esp + 0x1a8]
push 1
push ebx
push edx
call fcn.0041bc16
mov ecx, dword [esp + 0x1a8]
mov eax, dword [esp + 0x1ac]
jmp 0x40231b
xor eax, eax
mov ecx, edx
test ebx, ebx
je 0x40232f
add ecx, eax
push ebx
push esi
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x1ac]
add eax, ebx
mov dword [esp + 0x1ac], eax
lea eax, [esp + 0x1a8]
push eax
call fcn.0041bc94
add esp, 4
mov eax, dword [esp + 0x1a8]
mov ecx, dword [esp + 0x1ac]
mov dword [esp + 0x190], ecx
mov dword [esp + 0x18c], eax
mov eax, dword [esp + 0x194]
test eax, eax
je 0x402381
cmp eax, 0x4e4
je 0x402381
cmp eax, 0xfde9
jne 0x403634
xor ebx, ebx
cmp byte [esp + 0x199], 0
jne 0x40256e
mov dword [esp + 0x98], 0
call fcn.0041bdea
mov dword [esp + 0x9c], eax
push 0x40
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov esi, eax
movzx eax, byte [esp + 0xcc]
mov ecx, eax
shr ecx, 1
test al, 1
lea eax, [esp + 0xcd]
cmovne eax, dword [esp + 0xd4]
mov dword [esp + 0x4c], eax
cmovne ecx, dword [esp + 0xd0]
mov dword [esp + 0x50], ecx
sub esp, 0x10
movq xmm0, qword [esp + 0x5c]
movq qword [esp], xmm0
lea edi, [esp + 0xa8]
mov dword [esp + 8], edi
mov dword [esp + 0xc], 3
mov ecx, esi
call fcn.0041bc10
cmp dword [esp + 0x98], 0
jne 0x4034ec
lea edi, [esp + 0x17c]
push pe_nt_image_headers32
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [0x41da4c]
lea ecx, [eax + 8]
mov dword [ebx], ecx
mov word [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0
mov byte [ebx + 0x14], 0
mov byte [ebx + 0x18], 0
mov byte [ebx + 0x1c], 0
mov byte [ebx + 0x20], 0
mov dword [ebx + 0x24], 0
mov dword [ebx + 0x28], 0
mov byte [ebx + 0x2c], 0
mov byte [ebx + 0x44], 0
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x4c], 0
mov byte [ebx + 0x50], 0
lea ecx, [ebx + 0x58]
pxor xmm0, xmm0
movdqu xmmword [ebx + 0x58], xmm0
mov dword [ebx + 0x54], ecx
mov dword [ebx + 0x68], 0
mov dword [ebx + 0x6c], edi
mov dword [ebx + 0x70], esi
mov word [ebx + 0x74], 1
movzx ecx, byte [esp + 0x198]
mov byte [ebx + 4], cl
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov byte [esp + 0x10], 1
mov word [esp + 0x14], 0
mov dword [esp + 4], 0x41d9d4
lea edx, [esp + 4]
lea ecx, [esp + 0x11c]
push edx
push ebx
call dword [eax + 8]
mov eax, dword [esp + 0x11c]
mov dword [esp + 0x38], eax
mov dword [esp + 0x11c], 0
test eax, eax
jne 0x40354b
mov eax, dword [esp + 0x19c]
mov ecx, eax
and ecx, 0x3ff
shr eax, 0xa
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov byte [esp + 0x58], 1
mov word [esp + 0x5c], 0x1030
mov edx, dword [0x41da48]
add edx, 8
mov dword [esp + 0x4c], edx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
mov eax, dword [ebx]
lea ecx, [esp + 0x118]
push ebp
push ebx
call dword [eax + 0x40]
mov eax, dword [esp + 0x118]
mov dword [esp + 0x38], eax
mov dword [esp + 0x118], 0
test eax, eax
jne 0x403279
mov eax, dword [esp]
mov dword [esp + 0x24], eax
movdqu xmm0, xmmword [esp + 0x120]
movq qword [esp + 0x28], xmm0
lea eax, [esp + 0x24]
lea ecx, [esp + 4]
push eax
call fcn.0040fb20
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4025a7
mov dword [esp + 0x28], eax
push eax
call sub.libc.dll_operator_delete_void_
add esp, 4
lea esi, [esp + 4]
mov ecx, esi
call fcn.0040fb70
test al, al
je 0x402756
cmp byte [esp + 0x199], 0
lea ebp, [esp + 0x130]
jne 0x4025f9
lea ecx, [esp + 0x98]
push ebx
call fcn.0040cef0
mov eax, dword [esp + 0x98]
mov dword [esp + 0xac], eax
mov dword [esp + 0x98], 0
test eax, eax
jne 0x4035c6
mov eax, dword [esp + 4]
test eax, eax
je 0x40260e
mov dword [esp + 8], eax
push eax
call sub.libc.dll_operator_delete_void_
add esp, 4
test ebx, ebx
je 0x402619
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x50]
mov eax, dword [esp + 0x1a8]
lea ecx, [esp + 0x1b4]
cmp eax, ecx
je 0x402634
push eax
call sub.msvcrt.dll_free
add esp, 4
test byte [esp + 0x7c], 1
mov esi, dword [esp + 0xe4]
je 0x402651
push dword [esp + 0x84]
call sub.libc.dll_operator_delete_void_
add esp, 4
test esi, esi
je 0x40265c
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
test byte [esp + 0xc8], 1
jne 0x402681
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0xc0], 0
test ecx, ecx
je 0x402681
mov eax, dword [ecx]
call dword [eax + 4]
test byte [esp + 0x100], 1
jne 0x402809
test byte [esp + 0xcc], 1
jne 0x402826
test byte [esp + 0x70], 1
jne 0x402840
cmp dword [esp + 0x174], 2
jne 0x402d02
test byte [esp + 0x18], 1
jne 0x40272e
mov eax, dword [esp + 0x20]
mov dword [esp + 0xfc], eax
movq xmm0, qword [esp + 0x18]
movq qword [esp + 0xf4], xmm0
test byte [esp + 0x168], 1
jne 0x4028ab
mov eax, dword [ebp + 0x40]
mov dword [esp + 0xe0], eax
movq xmm0, qword [ebp + 0x38]
movq qword [esp + 0xd8], xmm0
test byte [esp + 0x134], 1
jne 0x40291e
lea eax, [esp + 0x134]
mov ecx, dword [eax + 8]
mov dword [esp + 0xf0], ecx
movq xmm0, qword [eax]
movq qword [esp + 0xe8], xmm0
jmp 0x402983
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
cmp ebx, 0xa
ja 0x40285f
lea eax, [esp + 0xf5]
mov ecx, ebx
add cl, bl
mov byte [esp + 0xf4], cl
jmp 0x402891
lea ebp, [esp + 0x38]
jmp 0x4027a5
mov eax, dword [edi]
lea ecx, [esp + 0x114]
push ebx
push edi
call dword [eax + 0xc]
mov eax, dword [esp + 0x114]
mov dword [esp + 0xac], eax
mov dword [esp + 0x114], 0
test eax, eax
jne 0x403088
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 8]
mov ecx, esi
call fcn.0040fb70
test al, al
jne 0x4025ba
mov ecx, ebp
push esi
call fcn.0040fb80
test byte [esp + 0x3c], 1
jne 0x4027e0
mov edi, dword [esp + 0x38]
cmp byte [esp + 0x179], 0
je 0x4027ce
call fcn.0041bce8
mov edx, dword [edi]
mov ecx, edi
push eax
call dword [edx]
cmp byte [esp + 0x199], 0
je 0x402760
test edi, edi
jne 0x40278f
jmp 0x402796
mov eax, dword [esp + 0x38]
mov dword [esp + 0x38], 0
mov dword [esp + 0x98], eax
test eax, eax
jne 0x40300b
xor edi, edi
cmp byte [esp + 0x179], 0
jne 0x4027c2
jmp 0x4027ce
push dword [esp + 0x108]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0xcc], 1
je 0x40269d
push dword [esp + 0xd4]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x70], 1
je 0x4026a8
push dword [esp + 0x78]
call sub.libc.dll_operator_delete_void_
add esp, 4
cmp dword [esp + 0x174], 2
je 0x4026b6
jmp 0x402d02
cmp ebx, 0xfffffff0
jae 0x40364c
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0xfc], eax
add edi, 2
mov dword [esp + 0xf4], edi
mov dword [esp + 0xf8], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
test byte [esp + 0x168], 1
je 0x4026e5
mov ebx, dword [esp + 0x16c]
mov esi, dword [esp + 0x170]
cmp ebx, 0xa
ja 0x4028d2
lea eax, [esp + 0xd9]
mov ecx, ebx
add cl, bl
mov byte [esp + 0xd8], cl
jmp 0x402904
cmp ebx, 0xfffffff0
jae 0x403658
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0xe0], eax
add edi, 2
mov dword [esp + 0xd8], edi
mov dword [esp + 0xdc], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
test byte [esp + 0x134], 1
je 0x40270b
mov ebx, dword [esp + 0x138]
mov esi, dword [esp + 0x13c]
cmp ebx, 0xa
ja 0x402945
lea eax, [esp + 0xe9]
mov ecx, ebx
add cl, bl
mov byte [esp + 0xe8], cl
jmp 0x402977
cmp ebx, 0xfffffff0
jae 0x403664
mov edi, ebx
or edi, 0xf
lea eax, [edi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0xf0], eax
add edi, 2
mov dword [esp + 0xe8], edi
mov dword [esp + 0xec], ebx
inc ebx
push ebx
push esi
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
lea ebx, [esp + 0x1a8]
mov ecx, ebx
push 0
call fcn.0041bd1e
mov word [esp + 0x5c], 0x104
lea edi, [esp + 0xf4]
mov dword [esp + 0x4c], edi
mov word [esp + 0x98], 0
sub esp, 0x18
movzx eax, word [esp + 0xb0]
mov word [esp + 0x14], ax
lea esi, [esp + 0x64]
mov dword [esp + 4], esi
lea eax, [esp + 0xd8]
mov dword [esp], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
call fcn.0041bbf2
add esp, 0x18
test byte [esp + 0xc8], 1
jne 0x4030fd
lea ecx, [esp + 0x100]
push dword [esp + 0xc0]
call fcn.0041bd36
sub esp, 0x14
movdqu xmm0, xmmword [esp + 0x114]
movdqu xmmword [esp + 4], xmm0
lea edi, [esp + 0x18]
mov dword [esp], edi
call fcn.0041bd12
add esp, 0x14
test byte [esp + 8], 1
jne 0x402a40
mov esi, dword [esp + 4]
jmp 0x402a5a
mov eax, dword [esp + 4]
mov dword [esp + 4], 0
mov dword [esp + 0x24], eax
test eax, eax
jne 0x403386
xor esi, esi
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
lea eax, [esp + 0xa0]
lea ecx, [esp + 0x90]
push eax
push esi
push ebx
call fcn.0041bd18
mov eax, dword [esp + 0x90]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x90], 0
test eax, eax
jne 0x4031b3
mov eax, dword [esp + 0xa0]
cmp eax, dword [esp + 0xa4]
jne 0x403214
mov word [esp + 0x14], 0x104
lea ebp, [esp + 0xe8]
mov dword [esp + 4], ebp
lea ecx, [esp + 0x4c]
push edi
call fcn.0041bd0c
mov eax, dword [esp + 0x58]
dec eax
cmp eax, 0x25
ja case.0x402aed.2
jmp dword [eax*4 + 0x41da50]
mov eax, 0x1c4
jmp 0x402b0e
mov eax, 0xaa64
jmp 0x402b0e
mov eax, 0x14c
jmp 0x402b0e
mov eax, 0x8664
lea ebp, [esp + 0x7c]
push 0
push ebx
push eax
push ebp
call fcn.0041bd24
add esp, 0x10
test byte [esp + 0x80], 1
jne 0x402b2f
mov edi, dword [esp + 0x7c]
jmp 0x402b49
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x38], eax
test eax, eax
jne 0x403279
xor edi, edi
movzx eax, byte [esp + 0xd8]
mov ecx, eax
shr ecx, 1
test al, 1
lea eax, [esp + 0xd9]
cmovne eax, dword [esp + 0xe0]
mov dword [esp + 0x24], eax
cmovne ecx, dword [esp + 0xdc]
mov dword [esp + 0x28], ecx
mov eax, dword [edi + 8]
sub eax, dword [edi + 4]
sub esp, 0x14
movq xmm0, qword [esp + 0x38]
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], eax
mov dword [esp], ebp
mov dword [esp + 0x10], 0
call fcn.0041bc22
add esp, 0x14
test byte [esp + 0x80], 1
mov dword [esp], esi
jne 0x402bb5
mov ebx, dword [esp + 0x7c]
jmp 0x402bd2
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x7c], 0
mov dword [esp + 0xac], eax
test eax, eax
jne 0x4033fa
xor ebx, ebx
mov ebp, dword [edi + 4]
mov esi, dword [edi + 8]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
sub esi, ebp
je 0x402bed
push esi
push ebp
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
mov eax, dword [ebx]
lea ecx, [esp + 0xac]
push ebx
call dword [eax + 0xc]
mov eax, dword [esp + 0xac]
mov dword [esp + 0x38], eax
mov dword [esp + 0xac], 0
test eax, eax
jne 0x403225
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x14]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
test byte [esp + 0x4c], 1
mov esi, dword [esp]
je 0x402c3c
push dword [esp + 0x54]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov edi, dword [esp + 0xa0]
test edi, edi
je 0x402c91
mov ebx, dword [esp + 0xa4]
mov eax, edi
cmp ebx, edi
jne 0x402c67
jmp 0x402c81
add ebx, 0xfffffff4
cmp ebx, edi
je 0x402c7a
test byte [ebx - 0xc], 1
je 0x402c60
push dword [ebx - 4]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x402c60
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xa4], edi
push eax
call sub.libc.dll_operator_delete_void_
add esp, 4
test esi, esi
je 0x402c9c
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
test byte [esp + 0xc8], 1
jne 0x402cc1
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0xc0], 0
test ecx, ecx
je 0x402cc1
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [esp + 0x1a8]
call fcn.00407d90
test byte [esp + 0xe8], 1
jne 0x402ea4
test byte [esp + 0xd8], 1
jne 0x402ec1
test byte [esp + 0xf4], 1
je 0x402d02
push dword [esp + 0xfc]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x18], 1
je 0x402d15
push dword [esp + 0x20]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov esi, dword [esp + 0x17c]
test esi, esi
je 0x402d61
mov edi, dword [esp + 0x180]
mov eax, esi
cmp edi, esi
jne 0x402d37
jmp 0x402d51
add edi, 0xfffffff4
cmp edi, esi
je 0x402d4a
test byte [edi - 0xc], 1
je 0x402d30
push dword [edi - 4]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x402d30
mov eax, dword [esp + 0x17c]
mov dword [esp + 0x180], esi
push eax
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x168], 1
jne 0x402dc1
test byte [esp + 0x158], 1
jne 0x402dda
mov esi, dword [esp + 0x14c]
test esi, esi
jne 0x402df4
mov esi, dword [esp + 0x140]
test esi, esi
jne 0x402e50
test byte [esp + 0x134], 1
je 0x402da8
push dword [esp + 0x13c]
call sub.libc.dll_operator_delete_void_
add esp, 4
lea ecx, [esp + 0x2e8]
call fcn.0041bd30
xor eax, eax
add esp, 0x340
pop esi
pop edi
pop ebx
pop ebp
ret
push dword [esp + 0x170]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x158], 1
je 0x402d75
push dword [esp + 0x160]
call sub.libc.dll_operator_delete_void_
add esp, 4
mov esi, dword [esp + 0x14c]
test esi, esi
je 0x402d80
mov edi, dword [esp + 0x150]
mov eax, esi
cmp edi, esi
jne 0x402e17
jmp 0x402e31
add edi, 0xfffffff4
cmp edi, esi
je 0x402e2a
test byte [edi - 0xc], 1
je 0x402e10
push dword [edi - 4]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x402e10
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x150], esi
push eax
call sub.libc.dll_operator_delete_void_
add esp, 4
mov esi, dword [esp + 0x140]
test esi, esi
je 0x402d8f
mov edi, dword [esp + 0x144]
mov eax, esi
cmp edi, esi
jne 0x402e67
jmp 0x402e81
add edi, 0xfffffff4
cmp edi, esi
je 0x402e7a
test byte [edi - 0xc], 1
je 0x402e60
push dword [edi - 4]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x402e60
mov eax, dword [esp + 0x140]
mov dword [esp + 0x144], esi
push eax
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x134], 1
jne 0x402d99
jmp 0x402da8
push dword [esp + 0xf0]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0xd8], 1
je 0x402ce9
push dword [esp + 0xe0]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0xf4], 1
jne 0x402cf3
jmp 0x402d02
mov eax, 7
mov ecx, 8
lea edx, [eax + 1]
cmp edx, ecx
jbe 0x401b78
lea ecx, [esp + 0x1a8]
push 8
push edx
lea eax, [esp + 0x1bc]
push eax
call fcn.0041bc16
mov eax, dword [esp + 0x1ac]
jmp 0x401b78
mov ecx, eax
push 1
push 0x41ce9f
call fcn.0041bbe0
cmp byte [esp + 0x131], 0
je 0x401d6b
push 0
call sub.msvcrt.dll_exit
movzx eax, byte [esp + 0x134]
mov ecx, eax
shr ecx, 1
test al, 1
lea eax, [esp + 0x135]
cmovne eax, dword [esp + 0x13c]
mov dword [esp + 0x38], eax
cmovne ecx, dword [esp + 0x138]
mov dword [esp + 0x3c], ecx
sub esp, 0x10
movq xmm0, qword [esp + 0x48]
movq qword [esp + 8], xmm0
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.004073e0
add esp, 0x10
test byte [esp + 0x58], 1
jne 0x4036f0
lea ecx, [esp + 4]
push esi
call fcn.0041bde4
test byte [esp + 0x58], 1
jne 0x4019b4
test byte [esp + 0x4c], 1
je 0x4019b4
push dword [esp + 0x54]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x4019b4
lea ecx, [esp + 0x1a8]
push 8
push eax
lea eax, [esp + 0x1bc]
push eax
call fcn.0041bc16
mov ecx, dword [esp + 0x1ac]
jmp 0x401bb1
lea ecx, [esp + 0x1a8]
push 8
push eax
lea eax, [esp + 0x1bc]
push eax
call fcn.0041bc16
mov ecx, dword [esp + 0x1ac]
jmp 0x401be8
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x98]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0xac], eax
mov dword [esp + 0x98], 0
call fcn.0041bce2
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x18], ecx
movups xmm0, xmmword [esp + 0x68]
movups xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
lea eax, [esp + 0xc8]
mov dword [esp], eax
call fcn.0041bc4c
add esp, 0x1c
mov ecx, dword [esp + 0xac]
jmp 0x4035b7
mov ecx, dword [0x423288]
test ecx, ecx
jne 0x403097
call fcn.00407cc0
mov eax, dword [ecx]
lea edx, [esp + 0xac]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x38], eax
mov dword [esp + 0xac], 0
call fcn.0041bce2
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x18], ecx
movups xmm0, xmmword [esp + 0x68]
movups xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.0041bc4c
add esp, 0x1c
mov ecx, dword [esp + 0x38]
jmp 0x4035b7
mov dword [esp + 0x24], str.Error_opening_file_
mov word [esp + 0x34], 0x103
mov word [esp + 0x48], 0x104
mov dword [esp + 0x38], edi
lea eax, [esp + 0x38]
lea ecx, [esp + 0x24]
lea edi, [esp + 0x7c]
push eax
push ecx
push edi
call fcn.00406d60
add esp, 0xc
mov dword [esp + 0xac], 0x41d7a6
mov word [esp + 0xbc], 0x103
lea eax, [esp + 0xac]
lea ebx, [esp + 4]
push eax
push edi
push ebx
call fcn.00406d60
add esp, 0xc
lea ecx, [esp + 0xc0]
call fcn.00407300
mov dword [esp + 0x94], edx
mov dword [esp + 0x90], eax
lea eax, [esp + 0x90]
lea edi, [esp + 0xa0]
mov ecx, edi
push eax
call fcn.0041bdba
mov word [esp + 0x110], 0x104
mov dword [esp + 0x100], edi
lea eax, [esp + 0x100]
push eax
push ebx
push esi
call fcn.00406d60
add esp, 0xc
mov ecx, esi
call fcn.004064f0
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x7c]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov dword [esp + 0x7c], 0
call fcn.0041bce2
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x68]
movdqu xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
mov dword [esp], edi
jmp 0x4034db
push eax
push str.Duplicate_resources:
push edi
call fcn.0041be02
jmp 0x403534
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x38], 0
call fcn.0041bce2
mov word [esp + 0x14], 0x104
mov dword [esp + 4], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x20]
jmp 0x4033d5
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov dword [esp + 0x38], 0
call fcn.0041bce2
mov word [esp + 0x14], 0x104
mov dword [esp + 4], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x20]
jmp 0x40359a
mov dword [esp + 0x7c], str.Error_opening_file_
mov word [esp + 0x8c], 0x103
mov word [esp + 0x34], 0x104
mov dword [esp + 0x24], esi
lea eax, [esp + 0x24]
lea ecx, [esp + 0x7c]
lea esi, [esp + 4]
push eax
push ecx
push esi
call fcn.00406d60
add esp, 0xc
mov dword [esp + 0x38], 0x41d7a6
mov word [esp + 0x48], 0x103
lea eax, [esp + 0x38]
lea edi, [esp + 0x4c]
push eax
push esi
push edi
call fcn.00406d60
add esp, 0xc
lea ecx, [esp + 0xc0]
call fcn.00407300
mov dword [esp + 0x94], edx
mov dword [esp + 0x90], eax
lea eax, [esp + 0x90]
lea esi, [esp + 0xa0]
mov ecx, esi
push eax
call fcn.0041bdba
mov word [esp + 0xbc], 0x104
mov dword [esp + 0xac], esi
lea eax, [esp + 0xac]
push eax
push edi
push ebx
call fcn.00406d60
add esp, 0xc
mov ecx, ebx
call fcn.004064f0
lea ecx, [esp + 0x18]
call fcn.00406340
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x24]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x24], 0
call fcn.0041bce2
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x68]
movdqu xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
lea eax, [esp + 0x98]
mov dword [esp], eax
call fcn.0041bc4c
add esp, 0x1c
mov ecx, dword [esp + 0x7c]
jmp 0x4035b7
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0xac]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x38], eax
mov dword [esp + 0xac], 0
call fcn.0041bce2
mov word [esp + 0x14], 0x104
mov dword [esp + 4], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x20]
jmp 0x40361e
mov dword [esp + 0x4c], str.llvm_rc:_Preprocessing_failed.
mov word [esp + 0x5c], 0x103
lea ecx, [esp + 0x4c]
call fcn.004064f0
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x24]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
mov dword [esp + 0x24], 0
call fcn.0041bce2
mov word [esp + 0x1b8], 0x104
mov dword [esp + 0x1a8], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x1d4]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x1c4]
movdqu xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
lea eax, [esp + 0x20]
mov dword [esp], eax
call fcn.0041bc4c
add esp, 0x1c
mov ecx, dword [esp + 4]
jmp 0x4035b7
lea eax, [esp + 0xcc]
lea esi, [esp + 0x38]
push eax
push str.Error_opening_output_file_
push esi
call fcn.0041be02
add esp, 0xc
lea ebx, [esp + 0x24]
push 0x41d7a6
push esi
push ebx
call fcn.00407370
add esp, 0xc
lea esi, [esp + 0xac]
mov ecx, esi
push edi
call fcn.0041bdba
lea edi, [esp + 4]
push esi
push ebx
push edi
call fcn.00407320
add esp, 0xc
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], edi
lea ecx, [esp + 0x4c]
call fcn.004064f0
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov dword [esp + 0x38], 0
call fcn.0041bce2
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x68]
movdqu xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
lea eax, [esp + 0x40]
mov dword [esp], eax
call fcn.0041bc4c
add esp, 0x1c
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4035c0
mov eax, dword [ecx]
call dword [eax + 4]
push esi
call sub.msvcrt.dll_exit
mov ecx, dword [0x423288]
test ecx, ecx
je 0x403092
mov eax, dword [ecx]
lea edx, [esp + 0xac]
push edx
call dword [eax + 0x18]
mov esi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x38], eax
mov dword [esp + 0xac], 0
call fcn.0041bce2
mov word [esp + 0x5c], 0x104
mov dword [esp + 0x4c], 0x423268
sub esp, 0x1c
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x18], ecx
movdqu xmm0, xmmword [esp + 0x68]
movdqu xmmword [esp + 8], xmm0
mov dword [esp + 4], eax
lea eax, [esp + 0x54]
mov dword [esp], eax
jmp 0x4030ec
mov dword [esp + 0x4c], str.Unsupported_code_page__only_0__1252_and_65001_are_supported_
mov word [esp + 0x5c], 0x103
lea ecx, [esp + 0x4c]
call fcn.004064f0
lea ecx, [esp + 0xf4]
call fcn.00406340
lea ecx, [esp + 0xd8]
call fcn.00406340
lea ecx, [esp + 0xe8]
call fcn.00406340
mov dword [esp + 0x24], str.Unsupported_architecture_in_target_
mov word [esp + 0x34], 0x103
mov word [esp + 0x48], 0x104
mov dword [esp + 0x38], ebp
lea eax, [esp + 0x38]
lea ecx, [esp + 0x24]
lea esi, [esp + 0x7c]
push eax
push ecx
push esi
call fcn.00406d60
add esp, 0xc
mov dword [esp + 0xac], 0x41da45
mov word [esp + 0xbc], 0x103
lea eax, [esp + 0xac]
push eax
push esi
push edi
call fcn.00406d60
add esp, 0xc
mov ecx, edi
call fcn.004064f0
lea ecx, [esp + 0x70]
call fcn.00406340
lea ecx, [esp + 0xcc]
call fcn.00406340
lea ecx, [esp + 0x100]
call fcn.00406340
call fcn.0041bce2
mov ecx, eax
push str.llvm_rc:_Unable_to_find_clang_for_preprocessing.
call fcn.004064a0
mov ecx, eax
push 0x41ce9f
call fcn.004064a0
xor ebx, ebx
cmp byte [esp + 0x178], 0
sete bl
mov eax, str._no_preprocess
mov esi, str.__no_preprocess
cmove esi, eax
xor ebx, 0xf
call fcn.0041bce2
mov ecx, eax
push str.Pass
call fcn.004064a0
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], ebx
sub esp, 8
movsd xmm0, qword [esp + 0x84]
movsd qword [esp], xmm0
mov ecx, eax
call fcn.00406860
mov ecx, eax
push str._to_disable_preprocessing._n
call fcn.004064a0
mov dword [esp + 0x1a8], str.llvm_rc:_Unable_to_preprocess.
mov word [esp + 0x1b8], 0x103
lea ecx, [esp + 0x1a8]
call fcn.004064f0
int3