Function at 0x40e580
Capabilities:
Check if file exists
Create directory
Get file attributes
Get session user name

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x788
mov eax, dword [0x450080]
xor eax, esp
mov dword [esp + 0x784], eax
push esi
push edi
push 0x3d
mov edx, 0x3c
mov dword [esp + 0xd0], 0
lea ecx, [esp + 0x124]
call fcn.0040de50
mov edx, eax
add esp, 4
cmp dword [edx + 0x14], 0xf
jbe 0x40e5c7
mov edx, dword [edx]
mov ecx, edx
mov dword [esp + 0x330], 0
xorps xmm0, xmm0
mov dword [esp + 0x334], 0
movaps xmmword [esp + 0x320], xmm0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40e5f0
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0x328]
call fcn.004193c0
lea ecx, [esp + 0x320]
call fcn.004047e0
test al, al
je 0x40e625
call fcn.0040a800
mov byte [esp + 0xb], 1
test al, al
jne 0x40e62a
mov byte [esp + 0xb], 0
mov ecx, dword [esp + 0x334]
cmp ecx, 0xf
jbe 0x40e666
mov edx, dword [esp + 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40e65c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ed7
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
cmp ecx, 0xf
jbe 0x40e6a2
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40e698
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ed7
push ecx
push edx
call fcn.00420325
add esp, 8
cmp byte [esp + 0xb], 0
je 0x412f86
push 1
xorps xmm0, xmm0
mov dword [esp + 0x184], 0
push 0x44adfc
lea ecx, [esp + 0x178]
movaps xmmword [esp + 0x178], xmm0
mov dword [esp + 0x18c], 0
call fcn.004193c0
lea ecx, [esp + 0x480]
call fcn.0040d930
lea ecx, [esp + 0x320]
call fcn.0040a630
mov edx, dword [esp + 0x330]
mov edi, 0x7fffffff
mov esi, dword [esp + 0x490]
mov eax, edi
sub eax, edx
cmp eax, esi
jb 0x412edc
cmp dword [esp + 0x334], 0xf
lea ecx, [esp + 0x320]
push esi
cmova ecx, dword [esp + 0x324]
lea eax, [esp + 0x484]
cmp dword [esp + 0x498], 0xf
cmova eax, dword [esp + 0x484]
push eax
push edx
push ecx
push ecx
push dword [esp + 0xe0]
lea ecx, [esp + 0x538]
call fcn.0041b9e0
cmp dword [esp + 0x534], 0xf
lea ecx, [esp + 0x520]
cmova ecx, dword [esp + 0x520]
call fcn.0040a300
test al, al
jne 0x412f86
lea ecx, [esp + 0x538]
call fcn.0040c100
lea eax, [esp + 0xcc]
mov dword [esp + 0xcc], 0x101
push eax
lea eax, [esp + 0x584]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
test eax, eax
je 0x40e84e
lea eax, [esp + 0x580]
push eax
lea ecx, [esp + 0xd4]
call fcn.00415840
cmp dword [esp + 0xe4], 7
lea ecx, [esp + 0xd0]
mov eax, dword [esp + 0xe0]
cmova ecx, dword [esp + 0xd0]
lea eax, [ecx + eax*2]
lea ecx, [esp + 0xd0]
cmova ecx, dword [esp + 0xd0]
push ecx
push eax
push ecx
lea ecx, [esp + 0x2ac]
call fcn.00418ab0
mov ecx, dword [esp + 0xe4]
cmp ecx, 7
jbe 0x40e882
mov edx, dword [esp + 0xd0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e842
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ee1
push ecx
push edx
call fcn.00420325
add esp, 8
jmp 0x40e882
push 0
xorps xmm0, xmm0
mov dword [esp + 0x2b4], 0
push 0x44ad19
lea ecx, [esp + 0x2a8]
movaps xmmword [esp + 0x2a8], xmm0
mov dword [esp + 0x2bc], 0
call fcn.004193c0
cmp dword [esp + 0x2b4], 0xf
lea edx, [esp + 0x2a0]
xorps xmm0, xmm0
mov dword [esp + 0xe0], 0
cmova edx, dword [esp + 0x2a0]
mov ecx, edx
movaps xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe4], 0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40e8c0
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0xd8]
call fcn.004193c0
lea eax, [esp + 0x320]
push eax
lea ecx, [esp + 0x154]
call fcn.00415d70
lea ecx, [esp + 0xd0]
push ecx
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x1bc]
call fcn.0041b800
push 0x3e
mov edx, 0x3d
lea ecx, [esp + 0x124]
call fcn.0040de50
add esp, 4
lea ecx, [esp + 0x568]
push eax
lea eax, [esp + 0x1b4]
push eax
push dword [esp + 0xd4]
call fcn.0041b800
mov ecx, dword [esp + 0x1c4]
cmp ecx, 0xf
jbe 0x40e975
mov edx, dword [esp + 0x1b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40e96b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ee6
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x164]
cmp ecx, 0xf
jbe 0x40e9b1
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40e9a7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ee6
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0xf
mov byte [esp + 0x150], 0
cmp ecx, 0xf
jbe 0x40ea0b
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ea01
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ee6
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
cmp ecx, 0xf
jbe 0x40ea47
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ea3d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ee6
push ecx
push edx
call fcn.00420325
add esp, 8
push 9
lea ecx, [esp + 0x1b4]
call fcn.0040a9f0
mov edx, eax
add esp, 4
cmp dword [edx + 0x14], 0xf
jbe 0x40ea62
mov edx, dword [edx]
mov ecx, edx
mov dword [esp + 0xe0], 0
xorps xmm0, xmm0
mov dword [esp + 0xe4], 0
movaps xmmword [esp + 0xd0], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40ea88
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0xd8]
call fcn.004193c0
lea eax, [esp + 0x320]
push eax
lea ecx, [esp + 0x154]
call fcn.00415d70
lea ecx, [esp + 0xd0]
push ecx
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x1ec]
call fcn.0041b800
push 0x3e
mov edx, 0x3d
lea ecx, [esp + 0x124]
call fcn.0040de50
add esp, 4
lea ecx, [esp + 0x550]
push eax
lea eax, [esp + 0x1e4]
push eax
push dword [esp + 0xd4]
call fcn.0041b800
mov ecx, dword [esp + 0x1f4]
cmp ecx, 0xf
jbe 0x40eb3d
mov edx, dword [esp + 0x1e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40eb33
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eeb
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x164]
cmp ecx, 0xf
jbe 0x40eb79
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40eb6f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eeb
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0xf
mov byte [esp + 0x150], 0
cmp ecx, 0xf
jbe 0x40ebd3
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ebc9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eeb
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x1c4]
cmp ecx, 0xf
jbe 0x40ec0f
mov edx, dword [esp + 0x1b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ec05
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eeb
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1c4], 0xf
mov byte [esp + 0x1b0], 0
cmp ecx, 0xf
jbe 0x40ec69
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ec5f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eeb
push ecx
push edx
call fcn.00420325
add esp, 8
lea ecx, [esp + 0x508]
call fcn.0040a4b0
mov edx, dword [esp + 0x518]
mov eax, edi
mov esi, dword [esp + 0x180]
sub eax, edx
cmp eax, esi
jb 0x412ef0
cmp dword [esp + 0x51c], 0xf
lea ecx, [esp + 0x508]
push esi
cmova ecx, dword [esp + 0x50c]
lea eax, [esp + 0x174]
cmp dword [esp + 0x188], 0xf
cmova eax, dword [esp + 0x174]
push eax
push edx
push ecx
push ecx
push dword [esp + 0xe0]
lea ecx, [esp + 0xe8]
call fcn.0041b9e0
push 0x4c
mov edx, 0x4b
lea ecx, [esp + 0x124]
call fcn.0040de50
add esp, 4
lea edx, [esp + 0xd0]
mov esi, eax
lea ecx, [esp + 0x150]
lea eax, [esp + 0x480]
push eax
call fcn.00418880
add esp, 4
lea ecx, [esp + 0x138]
push esi
push eax
push dword [esp + 0xd4]
call fcn.0041b800
mov ecx, dword [esp + 0x164]
cmp ecx, 0xf
jbe 0x40ed5c
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ed52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ef5
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0xf
mov byte [esp + 0x150], 0
cmp ecx, 0xf
jbe 0x40edb6
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40edac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ef5
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0xf
mov byte [esp + 0xd0], 0
cmp ecx, 0xf
jbe 0x40ee10
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ee06
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ef5
push ecx
push edx
call fcn.00420325
add esp, 8
mov edx, dword [esp + 0x518]
sub edi, edx
mov esi, dword [esp + 0x180]
cmp edi, esi
jb 0x412efa
cmp dword [esp + 0x51c], 0xf
lea ecx, [esp + 0x508]
push esi
cmova ecx, dword [esp + 0x50c]
lea eax, [esp + 0x174]
cmp dword [esp + 0x188], 0xf
cmova eax, dword [esp + 0x174]
push eax
push edx
push ecx
push ecx
push dword [esp + 0xe0]
lea ecx, [esp + 0xe8]
call fcn.0041b9e0
lea edx, [esp + 0x2a0]
lea ecx, [esp + 0x120]
call fcn.0040a400
push eax
lea eax, [esp + 0xd4]
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x1a4]
call fcn.0041b800
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40eed9
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40eecf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eff
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
cmp ecx, 0xf
jbe 0x40ef15
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ef0b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412eff
push ecx
push edx
call fcn.00420325
add esp, 8
push 0
xorps xmm0, xmm0
mov dword [esp + 0x4f4], 0
push 0x44ad19
lea ecx, [esp + 0x4e8]
movaps xmmword [esp + 0x4e8], xmm0
mov dword [esp + 0x4fc], 0
call fcn.004193c0
push 0
xorps xmm0, xmm0
mov dword [esp + 0x314], 0
push 0x44ad19
lea ecx, [esp + 0x308]
movaps xmmword [esp + 0x308], xmm0
mov dword [esp + 0x31c], 0
call fcn.004193c0
push 0
xorps xmm0, xmm0
mov dword [esp + 0x2d4], 0
push 0x44ad19
lea ecx, [esp + 0x2c8]
movaps xmmword [esp + 0x2c8], xmm0
mov dword [esp + 0x2dc], 0
call fcn.004193c0
push 0
xorps xmm0, xmm0
mov dword [esp + 0x294], 0
push 0x44ad19
lea ecx, [esp + 0x288]
movaps xmmword [esp + 0x288], xmm0
mov dword [esp + 0x29c], 0
call fcn.004193c0
push 0
xorps xmm0, xmm0
mov dword [esp + 0x2f4], 0
push 0x44ad19
lea ecx, [esp + 0x2e8]
movaps xmmword [esp + 0x2e8], xmm0
mov dword [esp + 0x2fc], 0
call fcn.004193c0
push 0
xorps xmm0, xmm0
mov dword [esp + 0x354], 0
push 0x44ad19
lea ecx, [esp + 0x348]
movaps xmmword [esp + 0x348], xmm0
mov dword [esp + 0x35c], 0
call fcn.004193c0
push 0x6d
push dword [0x2eadc8c]
push ecx
lea ecx, [esp + 0x4d4]
call fcn.00401f50
sub esp, 0xc
lea eax, [esp + 0x4e0]
mov ecx, esp
push eax
call fcn.00415d70
sub esp, 0x18
mov edx, 0x46
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x47
call fcn.0040de50
add esp, 4
mov edx, 1
mov ecx, esi
call fcn.00402890
mov esi, esp
mov edx, 0x46
sub esp, 0x18
mov ecx, esp
push 0x47
call fcn.0040de50
add esp, 4
xor edx, edx
mov ecx, esi
call fcn.00402890
add esp, 0x18
lea ecx, [esp + 0x168]
call fcn.0040b0a0
add esp, 0x48
lea ecx, [esp + 0xd0]
mov edx, eax
call fcn.0040be10
mov esi, eax
lea eax, [esp + 0x4e0]
cmp eax, esi
je 0x40f14b
mov ecx, dword [esp + 0x4f4]
cmp ecx, 0xf
jbe 0x40f121
mov edx, dword [esp + 0x4e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f117
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f04
push ecx
push edx
call fcn.00420325
add esp, 8
movups xmm0, xmmword [esi]
movups xmmword [esp + 0x4e0], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [esp + 0x4f0], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40f187
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f17d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f04
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0xf
mov byte [esp + 0xd0], 0
cmp ecx, 0xf
jbe 0x40f1e1
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f1d7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f04
push ecx
push edx
call fcn.00420325
add esp, 8
sub esp, 0x18
lea eax, [esp + 0x4e0]
mov ecx, esp
push eax
call fcn.00415d70
sub esp, 0x18
mov edx, 0x4d
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4e
call fcn.0040de50
add esp, 4
mov edx, 1
mov ecx, esi
call fcn.00402890
mov esi, esp
mov edx, 0x4d
sub esp, 0x18
mov ecx, esp
push 0x4e
call fcn.0040de50
add esp, 4
xor edx, edx
mov ecx, esi
call fcn.00402890
add esp, 0x18
lea ecx, [esp + 0x168]
call fcn.0040b0a0
add esp, 0x48
lea ecx, [esp + 0xd0]
mov edx, eax
call fcn.0040be10
mov esi, eax
lea eax, [esp + 0x300]
cmp eax, esi
je 0x40f2ec
mov ecx, dword [esp + 0x314]
cmp ecx, 0xf
jbe 0x40f2a4
mov edx, dword [esp + 0x300]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f29a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f09
push ecx
push edx
call fcn.00420325
add esp, 8
mov dword [esp + 0x310], 0
mov dword [esp + 0x314], 0xf
mov byte [esp + 0x300], 0
movups xmm0, xmmword [esi]
movups xmmword [esp + 0x300], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [esp + 0x310], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40f328
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f31e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f09
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0xf
mov byte [esp + 0xd0], 0
cmp ecx, 0xf
jbe 0x40f382
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f378
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f09
push ecx
push edx
call fcn.00420325
add esp, 8
sub esp, 0x18
lea eax, [esp + 0x4e0]
mov ecx, esp
push eax
call fcn.00415d70
sub esp, 0x18
mov edx, 0x4e
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4f
call fcn.0040de50
add esp, 4
mov edx, 1
mov ecx, esi
call fcn.00402890
mov esi, esp
mov edx, 0x4e
sub esp, 0x18
mov ecx, esp
push 0x4f
call fcn.0040de50
add esp, 4
xor edx, edx
mov ecx, esi
call fcn.00402890
add esp, 0x18
lea ecx, [esp + 0x168]
call fcn.0040b0a0
add esp, 0x48
lea ecx, [esp + 0xd0]
mov edx, eax
call fcn.0040be10
mov esi, eax
lea eax, [esp + 0x2c0]
cmp eax, esi
je 0x40f48d
mov ecx, dword [esp + 0x2d4]
cmp ecx, 0xf
jbe 0x40f445
mov edx, dword [esp + 0x2c0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f43b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f0e
push ecx
push edx
call fcn.00420325
add esp, 8
mov dword [esp + 0x2d0], 0
mov dword [esp + 0x2d4], 0xf
mov byte [esp + 0x2c0], 0
movups xmm0, xmmword [esi]
movups xmmword [esp + 0x2c0], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [esp + 0x2d0], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40f4c9
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f4bf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f0e
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0xf
mov byte [esp + 0xd0], 0
cmp ecx, 0xf
jbe 0x40f523
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f519
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f0e
push ecx
push edx
call fcn.00420325
add esp, 8
sub esp, 0x18
lea eax, [esp + 0x4e0]
mov ecx, esp
push eax
call fcn.00415d70
sub esp, 0x18
mov edx, 0x4f
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x50
call fcn.0040de50
add esp, 4
mov edx, 1
mov ecx, esi
call fcn.00402890
mov esi, esp
mov edx, 0x4f
sub esp, 0x18
mov ecx, esp
push 0x50
call fcn.0040de50
add esp, 4
xor edx, edx
mov ecx, esi
call fcn.00402890
add esp, 0x18
lea ecx, [esp + 0x168]
call fcn.0040b0a0
add esp, 0x48
lea ecx, [esp + 0xd0]
mov edx, eax
call fcn.0040be10
mov esi, eax
lea eax, [esp + 0x280]
cmp eax, esi
je 0x40f62e
mov ecx, dword [esp + 0x294]
cmp ecx, 0xf
jbe 0x40f5e6
mov edx, dword [esp + 0x280]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f5dc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f13
push ecx
push edx
call fcn.00420325
add esp, 8
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0xf
mov byte [esp + 0x280], 0
movups xmm0, xmmword [esi]
movups xmmword [esp + 0x280], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [esp + 0x290], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40f66a
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f660
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f13
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0xf
mov byte [esp + 0xd0], 0
cmp ecx, 0xf
jbe 0x40f6c4
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f6ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f13
push ecx
push edx
call fcn.00420325
add esp, 8
sub esp, 0x18
lea eax, [esp + 0x4e0]
mov ecx, esp
push eax
call fcn.00415d70
sub esp, 0x18
mov edx, 0x50
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x51
call fcn.0040de50
add esp, 4
mov edx, 1
mov ecx, esi
call fcn.00402890
mov esi, esp
mov edx, 0x50
sub esp, 0x18
mov ecx, esp
push 0x51
call fcn.0040de50
add esp, 4
xor edx, edx
mov ecx, esi
call fcn.00402890
add esp, 0x18
lea ecx, [esp + 0x168]
call fcn.0040b0a0
add esp, 0x48
lea ecx, [esp + 0xd0]
mov edx, eax
call fcn.0040be10
mov esi, eax
lea eax, [esp + 0x2e0]
cmp eax, esi
je 0x40f7cf
mov ecx, dword [esp + 0x2f4]
cmp ecx, 0xf
jbe 0x40f787
mov edx, dword [esp + 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f77d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f18
push ecx
push edx
call fcn.00420325
add esp, 8
mov dword [esp + 0x2f0], 0
mov dword [esp + 0x2f4], 0xf
mov byte [esp + 0x2e0], 0
movups xmm0, xmmword [esi]
movups xmmword [esp + 0x2e0], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [esp + 0x2f0], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40f80b
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f801
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f18
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x134]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0xf
mov byte [esp + 0xd0], 0
cmp ecx, 0xf
jbe 0x40f865
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f85b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f18
push ecx
push edx
call fcn.00420325
add esp, 8
push 0
push 0x44ad19
lea ecx, [esp + 0x4d0]
call fcn.004176d0
sub esp, 0x18
mov ecx, esp
push 0x143
push 0x6e
push ecx
call fcn.00401f50
sub esp, 0xc
mov edx, 0x47
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x48
call fcn.0040de50
add esp, 4
mov edx, 1
mov ecx, esi
call fcn.00402890
mov esi, esp
mov edx, 0x47
sub esp, 0x18
mov ecx, esp
push 0x48
call fcn.0040de50
add esp, 4
xor edx, edx
mov ecx, esi
call fcn.00402890
add esp, 0x18
lea ecx, [esp + 0x168]
call fcn.0040b0a0
mov esi, eax
add esp, 0x48
lea eax, [esp + 0x340]
cmp eax, esi
je 0x40f975
mov ecx, dword [esp + 0x354]
cmp ecx, 0xf
jbe 0x40f92d
mov edx, dword [esp + 0x340]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f923
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f1d
push ecx
push edx
call fcn.00420325
add esp, 8
mov dword [esp + 0x350], 0
mov dword [esp + 0x354], 0xf
mov byte [esp + 0x340], 0
movups xmm0, xmmword [esi]
movups xmmword [esp + 0x340], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [esp + 0x350], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0x134]
cmp ecx, 0xf
jbe 0x40f9b1
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f9a7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f1d
push ecx
push edx
call fcn.00420325
add esp, 8
push 4
xorps xmm0, xmm0
mov dword [esp + 0x3a4], 0
push 0x44ae00
lea ecx, [esp + 0x398]
movaps xmmword [esp + 0x398], xmm0
mov dword [esp + 0x3ac], 0
call fcn.004193c0
lea edx, [esp + 0x2a0]
lea ecx, [esp + 0x3f0]
call fcn.0040a400
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x40fa02
mov edx, dword [edx]
mov ecx, edx
mov dword [esp + 0x3c0], 0
xorps xmm0, xmm0
mov dword [esp + 0x3c4], 0
movaps xmmword [esp + 0x3b0], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fa28
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0x3b8]
call fcn.004193c0
push 1
xorps xmm0, xmm0
mov dword [esp + 0x1f4], 0
push str._5_
lea ecx, [esp + 0x1e8]
movaps xmmword [esp + 0x1e8], xmm0
mov dword [esp + 0x1fc], 0
call fcn.004193c0
push 0xb
lea ecx, [esp + 0x3dc]
call fcn.0040a9f0
mov edx, eax
add esp, 4
cmp dword [edx + 0x14], 0xf
jbe 0x40fa8e
mov edx, dword [edx]
mov ecx, edx
mov dword [esp + 0x1c0], 0
xorps xmm0, xmm0
mov dword [esp + 0x1c4], 0
movaps xmmword [esp + 0x1b0], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fab4
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0x1b8]
call fcn.004193c0
cmp dword [esp + 0x184], 0xf
lea edx, [esp + 0x170]
xorps xmm0, xmm0
mov dword [esp + 0x160], 0
cmova edx, dword [esp + 0x170]
mov ecx, edx
movaps xmmword [esp + 0x150], xmm0
mov dword [esp + 0x164], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fb08
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0x158]
call fcn.004193c0
cmp dword [esp + 0x1ac], 0xf
lea edx, [esp + 0x198]
xorps xmm0, xmm0
mov dword [esp + 0xe0], 0
cmova edx, dword [esp + 0x198]
mov ecx, edx
movaps xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe4], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fb60
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0xd8]
call fcn.004193c0
lea eax, [esp + 0x150]
push eax
lea eax, [esp + 0xd4]
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x384]
call fcn.0041b800
lea eax, [esp + 0x1b0]
push eax
lea eax, [esp + 0x37c]
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x444]
call fcn.0041b800
lea eax, [esp + 0x1e0]
push eax
lea eax, [esp + 0x43c]
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x4bc]
call fcn.0041b800
lea eax, [esp + 0x3b0]
push eax
lea eax, [esp + 0x4b4]
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x474]
call fcn.0041b800
lea eax, [esp + 0x390]
push eax
lea eax, [esp + 0x46c]
push eax
push dword [esp + 0xd4]
lea ecx, [esp + 0x12c]
call fcn.0041b800
mov ecx, dword [esp + 0x47c]
cmp ecx, 0xf
jbe 0x40fc62
mov edx, dword [esp + 0x468]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fc58
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x4c4]
cmp ecx, 0xf
jbe 0x40fc9e
mov edx, dword [esp + 0x4b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fc94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x44c]
cmp ecx, 0xf
jbe 0x40fcda
mov edx, dword [esp + 0x438]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fcd0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x38c]
cmp ecx, 0xf
jbe 0x40fd16
mov edx, dword [esp + 0x378]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd0c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0xe4]
cmp ecx, 0xf
jbe 0x40fd52
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd48
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x164]
cmp ecx, 0xf
jbe 0x40fd8e
mov edx, dword [esp + 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd84
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x1c4]
cmp ecx, 0xf
jbe 0x40fdca
mov edx, dword [esp + 0x1b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fdc0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x3ec]
cmp ecx, 0xf
jbe 0x40fe06
mov edx, dword [esp + 0x3d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fdfc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x1f4]
mov dword [esp + 0x3e8], 0
mov dword [esp + 0x3ec], 0xf
mov byte [esp + 0x3d8], 0
cmp ecx, 0xf
jbe 0x40fe60
mov edx, dword [esp + 0x1e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fe56
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x3c4]
cmp ecx, 0xf
jbe 0x40fe9c
mov edx, dword [esp + 0x3b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fe92
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x404]
cmp ecx, 0xf
jbe 0x40fed8
mov edx, dword [esp + 0x3f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fece
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x3a4]
mov dword [esp + 0x400], 0
mov dword [esp + 0x404], 0xf
mov byte [esp + 0x3f0], 0
cmp ecx, 0xf
jbe 0x40ff32
mov edx, dword [esp + 0x390]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ff28
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f22
push ecx
push edx
call fcn.00420325
add esp, 8
cmp dword [esp + 0x14c], 0xf
lea ecx, [esp + 0x138]
cmova ecx, dword [esp + 0x138]
call fcn.0040a300
test al, al
jne 0x412901
cmp dword [esp + 0x14c], 0xf
lea edx, [esp + 0x138]
xorps xmm0, xmm0
mov dword [esp + 0xe0], 0
cmova edx, dword [esp + 0x138]
mov ecx, edx
movaps xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe4], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40ff93
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0xd8]
call fcn.004193c0
lea edx, [esp + 0x340]
lea ecx, [esp + 0xd0]
call fcn.0040a1d0
mov ecx, dword [esp + 0xe4]
mov byte [esp + 0xb], al
cmp ecx, 0xf
jbe 0x410001
mov edx, dword [esp + 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fff3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f27
push ecx
push edx
call fcn.00420325
mov al, byte [esp + 0x13]
add esp, 8
test al, al
je 0x412901
cmp dword [esp + 0x14c], 0xf
lea ecx, [esp + 0x138]
cmova ecx, dword [esp + 0x138]
call fcn.0040a300
test al, al
je 0x412901
cmp dword [esp + 0x1ac], 0xf
lea eax, [esp + 0x198]
cmova eax, dword [esp + 0x198]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x410058
test al, 0x10
jne 0x412901
cmp dword [esp + 0x1ac], 0xf
lea edx, [esp + 0x198]
xorps xmm0, xmm0
mov dword [esp + 0xe0], 0
cmova edx, dword [esp + 0x198]
mov ecx, edx
movaps xmmword [esp + 0xd0], xmm0
mov dword [esp + 0xe4], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x410095
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0xd8]
call fcn.004193c0
push 0
lea ecx, [esp + 0xd4]
call fcn.0040a130
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x4100d7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov byte [esp + 0xb], 0
cmp eax, 0xb7
jne 0x4100dc
mov byte [esp + 0xb], 1
lea ecx, [esp + 0xd0]
call fcn.00415b60
cmp byte [esp + 0xb], 0
je 0x412901
lea ecx, [esp + 0x420]
call fcn.00409f50
sub esp, 0x18
mov edx, 0x4a
mov ecx, esp
push 0x4b
call fcn.0040de50
add esp, 4
lea edx, [esp + 0x438]
lea ecx, [esp + 0x420]
call fcn.00409a90
add esp, 0x18
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x37c]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x43c]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0xd4]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x154]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x1b4]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x1e4]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x3b4]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x394]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x3dc]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x3f4]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x46c]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
lea edx, [esp + 0x408]
lea ecx, [esp + 0x108]
call fcn.004097d0
push eax
lea eax, [esp + 0x174]
push eax
lea edx, [esp + 0x428]
lea ecx, [esp + 0xf8]
call fcn.00418830
add esp, 4
lea ecx, [esp + 0x4b4]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
push 0x44ad19
lea ecx, [esp + 0x40c]
call fcn.00415b00
lea ecx, [esp + 0x378]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x438]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0xd0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x150]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x1b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x1e0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x3b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x390]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x3d8]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x3f0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x468]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
lea ecx, [esp + 0x4b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x412859
xorps xmm0, xmm0
mov dword [esp + 0x270], 0
lea ecx, [esp + 0x378]
movq qword [esp + 0x268], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x268]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x264], 0
lea ecx, [esp + 0x438]
movq qword [esp + 0x25c], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x25c]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x258], 0
lea ecx, [esp + 0xd0]
movq qword [esp + 0x250], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x250]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x24c], 0
lea ecx, [esp + 0x150]
movq qword [esp + 0x244], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x244]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x1dc], 0
lea ecx, [esp + 0x1b0]
movq qword [esp + 0x1d4], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x1d4]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x374], 0
lea ecx, [esp + 0x1e0]
movq qword [esp + 0x36c], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x36c]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x240], 0
movq qword [esp + 0x238], xmm0
lea ecx, [esp + 0x3b0]
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x238]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x27c], 0
lea ecx, [esp + 0x390]
movq qword [esp + 0x274], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x274]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x234], 0
lea ecx, [esp + 0x3d8]
movq qword [esp + 0x22c], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x22c]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x210], 0
lea ecx, [esp + 0x3f0]
movq qword [esp + 0x208], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x208]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x228], 0
lea ecx, [esp + 0x468]
movq qword [esp + 0x220], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x220]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
xorps xmm0, xmm0
mov dword [esp + 0x21c], 0
lea ecx, [esp + 0x4b0]
movq qword [esp + 0x214], xmm0
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0xf0]
lea ecx, [esp + 0x214]
call fcn.00409210
lea ecx, [esp + 0xf0]
call fcn.00415b60
mov eax, dword [esp + 0x268]
cmp eax, dword [esp + 0x26c]
je 0x4127c9
mov eax, dword [esp + 0x25c]
cmp eax, dword [esp + 0x260]
je 0x4127c9
mov eax, dword [esp + 0x250]
cmp eax, dword [esp + 0x254]
je 0x4127c9
mov eax, dword [esp + 0x244]
cmp eax, dword [esp + 0x248]
je 0x4127c9
mov eax, dword [esp + 0x1d4]
cmp eax, dword [esp + 0x1d8]
je 0x4127c9
mov eax, dword [esp + 0x36c]
cmp eax, dword [esp + 0x370]
je 0x4127c9
mov eax, dword [esp + 0x238]
cmp eax, dword [esp + 0x23c]
je 0x4127c9
mov eax, dword [esp + 0x274]
cmp eax, dword [esp + 0x278]
je 0x4127c9
mov eax, dword [esp + 0x22c]
cmp eax, dword [esp + 0x230]
je 0x4127c9
mov eax, dword [esp + 0x208]
cmp eax, dword [esp + 0x20c]
je 0x4127c9
mov eax, dword [esp + 0x220]
cmp eax, dword [esp + 0x224]
je 0x4127c9
mov eax, dword [esp + 0x214]
cmp eax, dword [esp + 0x218]
je 0x4127c9
push 0x4a
mov edx, 0x49
lea ecx, [esp + 0xf4]
call fcn.0040de50
add esp, 4
lea ecx, [esp + 0x438]
push eax
call fcn.00415bb0
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea edx, [esp + 0x378]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x438]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0xd0]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x150]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x1b0]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x1e0]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x3b0]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x390]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x3d8]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x3f0]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x468]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea edx, [esp + 0x4b0]
lea ecx, [esp + 0x198]
call fcn.00408fc0
lea ecx, [esp + 0x378]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x438]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0xd0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x150]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x1b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x1e0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x3b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x390]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x3d8]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x3f0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x468]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea ecx, [esp + 0x4b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
jne 0x4127c9
lea eax, [esp + 0x120]
push eax
lea ecx, [esp + 0x37c]
call fcn.00415b30
lea ecx, [esp + 0x378]
call fcn.00415a10
push eax
lea ecx, [esp + 0x70]
call fcn.00415d30
mov esi, 4
lea edx, [esp + 0x268]
lea ecx, [esp + 0x6c]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x438]
call fcn.00415a10
push eax
lea ecx, [esp + 0x88]
call fcn.00415d30
mov esi, 0xc
lea edx, [esp + 0x25c]
lea ecx, [esp + 0x84]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0xd0]
call fcn.00415a10
push eax
lea ecx, [esp + 0x58]
call fcn.00415d30
mov esi, 0x1c
lea edx, [esp + 0x250]
lea ecx, [esp + 0x54]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x150]
call fcn.00415a10
push eax
lea ecx, [esp + 0xa0]
call fcn.00415d30
mov esi, 0x3c
lea edx, [esp + 0x244]
lea ecx, [esp + 0x9c]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x1b0]
call fcn.00415a10
push eax
lea ecx, [esp + 0xb8]
call fcn.00415d30
mov esi, 0x7c
lea edx, [esp + 0x1d4]
lea ecx, [esp + 0xb4]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x1e0]
call fcn.00415a10
push eax
lea ecx, [esp + 0x40]
call fcn.00415d30
mov esi, 0xfc
lea edx, [esp + 0x1d4]
lea ecx, [esp + 0x3c]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x3b0]
call fcn.00415a10
push eax
lea ecx, [esp + 0x28]
call fcn.00415d30
mov esi, 0x1fc
lea edx, [esp + 0x238]
lea ecx, [esp + 0x24]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x390]
call fcn.00415a10
push eax
lea ecx, [esp + 0x10]
call fcn.00415d30
mov esi, 0x3fc
lea edx, [esp + 0x274]
lea ecx, [esp + 0xc]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x3d8]
call fcn.00415a10
push eax
lea ecx, [esp + 0x49c]
call fcn.00415d30
mov esi, 0x7fc
lea edx, [esp + 0x22c]
lea ecx, [esp + 0x498]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x3f0]
call fcn.00415a10
push eax
lea ecx, [esp + 0x454]
call fcn.00415d30
mov esi, 0xffc
lea edx, [esp + 0x208]
lea ecx, [esp + 0x450]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x468]
call fcn.00415a10
push eax
lea ecx, [esp + 0x10c]
call fcn.00415d30
mov esi, 0x1ffc
lea edx, [esp + 0x220]
lea ecx, [esp + 0x108]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
lea ecx, [esp + 0x4b0]
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
mov esi, 0x3ffc
lea edx, [esp + 0x214]
lea ecx, [esp + 0xf0]
mov dword [esp + 0xcc], esi
call fcn.00408ef0
test al, al
je 0x4110b4
mov byte [esp + 0xb], 1
mov eax, esi
jmp 0x4110ce
mov eax, dword [esp + 0xcc]
mov byte [esp + 0xb], 0
mov dword [esp + 0xcc], eax
test eax, 0x2000
je 0x4110ed
and eax, 0xffffdfff
lea ecx, [esp + 0xf0]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test eax, 0x1000
je 0x411113
and eax, 0xffffefff
lea ecx, [esp + 0x108]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test eax, 0x800
je 0x411139
and eax, 0xfffff7ff
lea ecx, [esp + 0x450]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test eax, 0x400
je 0x41115f
and eax, 0xfffffbff
lea ecx, [esp + 0x498]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test eax, 0x200
je 0x411182
and eax, 0xfffffdff
lea ecx, [esp + 0xc]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test eax, 0x100
je 0x4111a5
and eax, 0xfffffeff
lea ecx, [esp + 0x24]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test al, al
jns 0x4111c5
and eax, 0xffffff7f
lea ecx, [esp + 0x3c]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test al, 0x40
je 0x4111e6
and eax, 0xffffffbf
lea ecx, [esp + 0xb4]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test al, 0x20
je 0x411207
and eax, 0xffffffdf
lea ecx, [esp + 0x9c]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test al, 0x10
je 0x411225
and eax, 0xffffffef
lea ecx, [esp + 0x54]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
test al, 8
je 0x411246
and eax, 0xfffffff7
lea ecx, [esp + 0x84]
mov dword [esp + 0xcc], eax
call fcn.00415b60
mov eax, dword [esp + 0xcc]
and eax, 0xfffffffb
lea ecx, [esp + 0x6c]
mov dword [esp + 0xcc], eax
call fcn.00415b60
cmp byte [esp + 0xb], 0
je 0x4127c9
lea ecx, [esp + 0x538]
call fcn.0040a1b0
test al, al
je 0x4127c9
lea ecx, [esp + 0x378]
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
push 0x49
mov edx, 0x48
lea ecx, [esp + 0x28]
call fcn.0040de50
add esp, 4
lea edx, [esp + 0xf0]
push eax
push ecx
lea ecx, [esp + 0x14]
call fcn.00408d90
add esp, 4
lea edx, [esp + 0x53c]
lea ecx, [esp + 0x49c]
push eax
push 0x44adfc
call fcn.00418950
add esp, 4
lea ecx, [esp + 0x458]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0x10c]
mov edx, eax
call fcn.00418930
add esp, 4
lea ecx, [esp + 0x538]
push eax
call fcn.00415bb0
lea ecx, [esp + 0x108]
call fcn.00415b60
lea ecx, [esp + 0x450]
call fcn.00415b60
lea ecx, [esp + 0x498]
call fcn.00415b60
lea ecx, [esp + 0xc]
call fcn.00415b60
lea ecx, [esp + 0x24]
call fcn.00415b60
lea ecx, [esp + 0xf0]
call fcn.00415b60
lea ecx, [esp + 0x538]
call fcn.00415a10
push eax
lea ecx, [esp + 0x10c]
call fcn.00415d30
lea ecx, [esp + 0x378]
call fcn.00415a10
push eax
lea ecx, [esp + 0xf4]
call fcn.00415d30
lea edx, [esp + 0x108]
lea ecx, [esp + 0xf0]
call fcn.00405f10
lea ecx, [esp + 0xf0]
mov byte [esp + 0xb], al
call fcn.00415b60
lea ecx, [esp + 0x108]
call fcn.00415b60
cmp byte [esp + 0xb], 0
je 0x4127c9
lea ecx, [esp + 0x538]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x4127c9
lea ecx, [esp + 0x378]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x4127c9
lea ecx, [esp + 0x438]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x4127c9
lea ecx, [esp + 0xd0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x4127c9
lea ecx, [esp + 0x150]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x4127c9
lea ecx, [esp + 0x1b0]
call fcn.00415a10
mov ecx, eax
call fcn.0040a300
test al, al
je 0x4127c9
lea ecx, [esp + 0x214]
call fcn.004156e0
lea ecx, [esp + 0x220]
call fcn.004156e0
lea ecx, [esp + 0x208]
call fcn.004156e0
lea ecx, [esp + 0x22c]
call fcn.004156e0
lea ecx, [esp + 0x274]
call fcn.004156e0
lea ecx, [esp + 0x238]
call fcn.004156e0
lea ecx, [esp + 0x36c]
call fcn.004156e0
lea ecx, [esp + 0x1d4]
call fcn.004156e0
lea ecx, [esp + 0x244]
call fcn.004156e0
lea ecx, [esp + 0x250]
call fcn.004156e0
lea ecx, [esp + 0x25c]
call fcn.004156e0
lea ecx, [esp + 0x268]
call fcn.004156e0
lea ecx, [esp + 0x4b0]
call fcn.00415b60
lea ecx, [esp + 0x468]
call fcn.00415b60
lea ecx, [esp + 0x3f0]
call fcn.00415b60
lea ecx, [esp + 0x3d8]
call fcn.00415b60
lea ecx, [esp + 0x390]
call fcn.00415b60
lea ecx, [esp + 0x3b0]
call fcn.00415b60
lea ecx, [esp + 0x1e0]
call fcn.00415b60
lea ecx, [esp + 0x1b0]
call fcn.00415b60
lea ecx, [esp + 0x150]
call fcn.00415b60
lea ecx, [esp + 0xd0]
call fcn.00415b60
lea ecx, [esp + 0x438]
call fcn.00415b60
lea ecx, [esp + 0x378]
call fcn.00415b60
lea ecx, [esp + 0x408]
call fcn.00415b60
lea ecx, [esp + 0x420]
call fcn.00415b60
mov ecx, dword [esp + 0x134]
cmp ecx, 0xf
jbe 0x41293d
mov edx, dword [esp + 0x120]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412933
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x4dc]
cmp ecx, 0xf
jbe 0x412979
mov edx, dword [esp + 0x4c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41296f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x354]
mov dword [esp + 0x4d8], 0
mov dword [esp + 0x4dc], 0xf
mov byte [esp + 0x4c8], 0
cmp ecx, 0xf
jbe 0x4129d3
mov edx, dword [esp + 0x340]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4129c9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x2f4]
mov dword [esp + 0x350], 0
mov dword [esp + 0x354], 0xf
mov byte [esp + 0x340], 0
cmp ecx, 0xf
jbe 0x412a2d
mov edx, dword [esp + 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412a23
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x294]
mov dword [esp + 0x2f0], 0
mov dword [esp + 0x2f4], 0xf
mov byte [esp + 0x2e0], 0
cmp ecx, 0xf
jbe 0x412a87
mov edx, dword [esp + 0x280]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412a7d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x2d4]
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0xf
mov byte [esp + 0x280], 0
cmp ecx, 0xf
jbe 0x412ae1
mov edx, dword [esp + 0x2c0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412ad7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x314]
mov dword [esp + 0x2d0], 0
mov dword [esp + 0x2d4], 0xf
mov byte [esp + 0x2c0], 0
cmp ecx, 0xf
jbe 0x412b3b
mov edx, dword [esp + 0x300]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412b31
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x4f4]
mov dword [esp + 0x310], 0
mov dword [esp + 0x314], 0xf
mov byte [esp + 0x300], 0
cmp ecx, 0xf
jbe 0x412b95
mov edx, dword [esp + 0x4e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412b8b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x1ac]
cmp ecx, 0xf
jbe 0x412bd1
mov edx, dword [esp + 0x198]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412bc7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x14c]
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x1ac], 0xf
mov byte [esp + 0x198], 0
cmp ecx, 0xf
jbe 0x412c2b
mov edx, dword [esp + 0x138]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412c21
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x51c]
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0xf
mov byte [esp + 0x138], 0
cmp ecx, 0xf
jbe 0x412c85
mov edx, dword [esp + 0x508]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412c7b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x564]
cmp ecx, 0xf
jbe 0x412cc1
mov edx, dword [esp + 0x550]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412cb7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x57c]
cmp ecx, 0xf
jbe 0x412cfd
mov edx, dword [esp + 0x568]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412cf3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x2b4]
cmp ecx, 0xf
jbe 0x412d39
mov edx, dword [esp + 0x2a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412d2f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x54c]
mov dword [esp + 0x2b0], 0
mov dword [esp + 0x2b4], 0xf
mov byte [esp + 0x2a0], 0
cmp ecx, 0xf
jbe 0x412d93
mov edx, dword [esp + 0x538]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412d89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f8d
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x534]
cmp ecx, 0xf
jbe 0x412dcf
mov edx, dword [esp + 0x520]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412dc5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f92
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x334]
mov dword [esp + 0x530], 0
mov dword [esp + 0x534], 0xf
mov byte [esp + 0x520], 0
cmp ecx, 0xf
jbe 0x412e29
mov edx, dword [esp + 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412e1f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f92
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x494]
cmp ecx, 0xf
jbe 0x412e65
mov edx, dword [esp + 0x480]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412e5b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f92
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x184]
mov dword [esp + 0x490], 0
mov dword [esp + 0x494], 0xf
mov byte [esp + 0x480], 0
cmp ecx, 0xf
jbe 0x412ebf
mov edx, dword [esp + 0x170]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x412eb5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412f92
push ecx
push edx
call fcn.00420325
add esp, 8
mov ecx, dword [esp + 0x78c]
xor eax, eax
pop edi
pop esi
xor ecx, esp
call fcn.0041fe91
mov esp, ebp
pop ebp
ret 0x10
call fcn.0042be2f
call fcn.00401330
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.00401330
call fcn.0042be2f
call fcn.00401330
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
call fcn.0042be2f
push 0x44ad19
lea ecx, [esp + 0x324]
call fcn.00415d30
lea ecx, [esp + 0x520]
call fcn.00415a10
push eax
lea ecx, [esp + 0x124]
call fcn.00415d30
lea edx, [esp + 0x320]
lea ecx, [esp + 0x120]
call fcn.0040a1d0
lea ecx, [esp + 0x120]
call fcn.00415b60
lea ecx, [esp + 0x320]
call fcn.00415b60
call fcn.00408e40
push 0
call fcn.00424b9e
call fcn.0042be2f
call fcn.0042be2f
int3