Function at 0x4375b1
Capabilities:
Get common file path
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x294
push esi
movzx eax, byte [ebp + 0x18]
test eax, eax
je 0x4375fa
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x1f4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1b8], eax
push 0xcd
push 0x56de
push dword [ebp - 0x1b8]
push 0
push dword [ebp - 0x1f4]
call fcn.00438772
add esp, 0x14
jmp 0x43876d
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x200], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 0x48], 0x15252cb1
mov dword [ebp - 0x68], 0
jmp 0x43762c
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x437642
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x27c], 5
jmp 0x437625
mov byte [ebp - 0x31], 0
movzx eax, byte [ebp - 0x31]
test eax, eax
je 0x43765b
push 0
push 0x15d8
call dword [sym.imp.GDI32.dll_RectVisible]
mov dword [ebp - 0x48], 0
jmp 0x43766b
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 2
jg 0x4376d0
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x4376ba
push 0x2308
push 0x107d
push 0x1dce
push 0xa1d
push 0x1707
push 0x1a0f
push 0x108b
push 0xc37
push 0x191e
push 0x1e26
push 0x6fa
call dword [sym.imp.GDI32.dll_StretchBlt]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp + eax*4 - 0x27c]
mov dword [ebp + ecx*4 - 0x27c], eax
jmp 0x437664
mov eax, dword [ebp - 0x1fc]
movzx eax, byte [eax]
test eax, eax
je 0x4379e7
mov dword [ebp - 0x84], 0xffffffff
mov dword [ebp - 0x260], 0x949dfcf0
mov dword [ebp - 0x24c], 0xfef9d786
mov dword [ebp - 0x254], 0x2c36544d
mov dword [ebp - 0x84], 0
jmp 0x437722
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 5
jg 0x437777
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x25c], 0xfffffff9
mov dword [ebp - 0x264], 0xfffffffb
mov dword [ebp - 0x70], 0xffffffea
jmp 0x437756
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 2
jl 0x437775
mov dword [ebp - 0x120], 0x7f6f
mov eax, dword [ebp - 0x120]
dec eax
mov dword [ebp - 0x120], eax
jmp 0x43774f
jmp 0x437715
mov dword [ebp - 0xc], 0xc9cc1417
mov dword [ebp - 0x78], 0x101aae4b
push 3
lea ecx, [ebp - 0x1b4]
call fcn.00413ed8
mov dword [ebp - 0x204], 1
push 4
lea ecx, [ebp - 0x210]
call fcn.00413ed8
mov dword [ebp - 0x1c0], 0xeab3ae5d
mov dword [ebp - 0x1c4], 0xe507
mov dword [ebp - 0x20], 0
jmp 0x4377cd
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x4377e9
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1b4]
call fcn.00413f7a
mov dword [eax], 0x1b44adca
jmp 0x4377c6
mov dword [ebp - 0x20], 0
jmp 0x4377f9
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x437815
push dword [ebp - 0x20]
lea ecx, [ebp - 0x210]
call fcn.00413f7a
mov dword [eax], 0xfffffff6
jmp 0x4377f2
cmp dword [ebp - 0xc], 0
jne 0x437901
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x23c], eax
imul esi, dword [ebp - 0xc], 0xffff
push 1
lea ecx, [ebp - 0x1b4]
call fcn.00413f7a
cmp esi, dword [eax]
jle 0x43786d
cmp dword [ebp - 0xc], 0
je 0x43786d
mov dword [ebp - 0x14c], 1
jmp 0x437874
and dword [ebp - 0x14c], 0
cmp dword [ebp - 0x14c], 0
jl 0x437889
mov dword [ebp - 0xb4], 1
jmp 0x437890
and dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xb4]
jl 0x4378b9
push 1
lea ecx, [ebp - 0x1b4]
call fcn.00413f7a
cmp dword [eax], 0
je 0x4378b9
mov dword [ebp - 0x154], 1
jmp 0x4378c0
and dword [ebp - 0x154], 0
push 0
lea ecx, [ebp - 0x1b4]
call fcn.00413f7a
mov ecx, dword [ebp - 0x154]
cmp ecx, dword [eax]
je 0x4378e3
mov dword [ebp - 0xbc], 1
jmp 0x4378ea
and dword [ebp - 0xbc], 0
mov eax, dword [ebp - 0x204]
cmp dword [ebp - 0xbc], eax
jge 0x437901
and dword [ebp - 0x15c], 0
jmp 0x43790b
mov dword [ebp - 0x15c], 1
push 2
lea ecx, [ebp - 0x210]
call fcn.00413f7a
mov ecx, dword [ebp - 0x15c]
cmp ecx, dword [eax]
jge 0x43792e
mov dword [ebp - 0xc4], 1
jmp 0x437935
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0xc4]
sub eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0xc]
jne 0x43794f
mov dword [ebp - 0x164], 1
jmp 0x437956
and dword [ebp - 0x164], 0
push 3
lea ecx, [ebp - 0x210]
call fcn.00413f7a
mov ecx, dword [ebp - 0x164]
cmp ecx, dword [eax]
je 0x437979
mov dword [ebp - 0x1ec], 1
jmp 0x437980
and dword [ebp - 0x1ec], 0
push 1
lea ecx, [ebp - 0x1b4]
call fcn.00413f7a
mov dword [ebp - 0xc], 0x9b467bb1
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0xc], 0
jmp 0x4379ad
mov eax, dword [ebp - 0xc]
dec eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xffffffe8
jge 0x4379bf
mov dword [ebp - 0x1c4], 3
jmp 0x4379a6
lea ecx, [ebp - 0x210]
call fcn.00413f75
lea ecx, [ebp - 0x1b4]
call fcn.00413f75
push 0x26c5
push 0
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
jmp 0x43876d
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x40], 0x3825062d
mov dword [ebp - 0x50], 0x5a83d87
mov dword [ebp - 0x148], 0x13053bf8
mov dword [ebp - 0x24], 0
jmp 0x437a16
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x437a2c
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x28c], 1
jmp 0x437a0f
mov dword [ebp - 0x24], 0
jmp 0x437a3c
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x437a52
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x230], 0xbb0f55f5
jmp 0x437a35
mov dword [ebp - 0x38], 0
jmp 0x437a62
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xf
je 0x437d01
mov dword [ebp - 0x10], 0xa3dbc56e
cmp dword [ebp - 0x38], 0xdec4
jl 0x437a88
mov dword [ebp - 0x1f8], 1
jmp 0x437a8f
and dword [ebp - 0x1f8], 0
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x10], eax
jle 0x437aa6
cmp dword [ebp - 0x10], 0
jne 0x437aa6
and dword [ebp - 0xcc], 0
jmp 0x437ab0
mov dword [ebp - 0xcc], 1
cmp dword [ebp - 0xcc], 0x76fd
jle 0x437ac8
mov dword [ebp - 0x16c], 1
jmp 0x437acf
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0xc35240ca
jb 0x437aed
mov dword [ebp - 0xd4], 1
jmp 0x437af4
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0xd4]
sub eax, dword [ebp - 0x10]
jne 0x437b0e
cmp dword [ebp - 0x10], 0
jne 0x437b0e
and dword [ebp - 0x88], 0
jmp 0x437b18
mov dword [ebp - 0x88], 1
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x88]
mov dword [ebp + eax - 0x28c], ecx
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x88], eax
jl 0x437b42
mov dword [ebp - 0x17c], 1
jmp 0x437b49
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x50], 0xffffffe6
jmp 0x437b62
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x1a
jge 0x437cfc
mov dword [ebp - 0x19c], 0x4433
mov dword [ebp - 0x98], 0xdbe4fcd5
mov byte [ebp - 0x2f], 0
movzx eax, byte [ebp - 0x2f]
test eax, eax
je 0x437b94
push 0
call dword [sym.imp.USER32.dll_DestroyCursor]
mov dword [ebp - 0x10], 0xfffffffb
jmp 0x437ba4
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xe
jg 0x437cf7
mov dword [ebp - 0xf0], 1
mov dword [ebp - 0x40], 0xfffffff5
jmp 0x437bc8
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x16
jge 0x437cf2
mov dword [ebp - 0xa0], 0xbbda73a1
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x240], eax
cmp dword [ebp - 0xf0], 0
je 0x437c30
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x10], eax
jne 0x437c08
mov dword [ebp - 0xdc], 1
jmp 0x437c0f
and dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0
je 0x437c30
mov dword [ebp - 0x184], 1
jmp 0x437c37
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x184], eax
jne 0x437c4e
mov dword [ebp - 0xe4], 1
jmp 0x437c55
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0xe4], eax
jl 0x437c7e
cmp dword [ebp - 0x10], 0
je 0x437c7e
mov eax, 0x4fce
test eax, eax
je 0x437c7e
mov dword [ebp - 0x18c], 1
jmp 0x437c85
and dword [ebp - 0x18c], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x28c]
mov eax, dword [ebp - 0x19c]
cmp dword [ebp - 0xa0], eax
jne 0x437caf
cmp dword [ebp - 0x10], 0
jne 0x437caf
and dword [ebp - 0x1d8], 0
jmp 0x437cb9
mov dword [ebp - 0x1d8], 1
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x244], eax
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x230], 0x5ce4ec6f
cmp dword [ebp - 0x98], 0
je 0x437ced
jmp 0x437cf2
jmp 0x437bc1
jmp 0x437b9d
jmp 0x437b5b
jmp 0x437a5b
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x1d4], eax
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x8c], 0x7ed6f186
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x54], 0x235bd639
mov dword [ebp - 0x44], 0xf9f0ac77
mov dword [ebp - 0x60], 0
jmp 0x437d4a
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 1
jge 0x437d5d
mov eax, dword [ebp - 0x60]
mov dword [ebp + eax*4 - 4], 0x624039b
jmp 0x437d43
mov dword [ebp - 0x18], 0
jmp 0x437d6d
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jl 0x438190
mov dword [ebp - 8], 0x76ff55e0
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x58], 0x697ab83d
mov dword [ebp - 0x80], 0
jmp 0x437da3
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 2
jge 0x437db9
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x238], 0x58fb5c4c
jmp 0x437d9c
mov dword [ebp - 8], 0
jmp 0x437dc9
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jg 0x43818b
mov dword [ebp - 0x130], 0xffffffff
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 4], 0
je 0x437efe
xor eax, eax
inc eax
je 0x437e06
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 4], 0
je 0x437e06
mov dword [ebp - 0xf8], 1
jmp 0x437e0d
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 8]
cmp dword [ebp - 0xf8], eax
jle 0x437e24
mov dword [ebp - 0x174], 1
jmp 0x437e2b
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 4]
cmp dword [ebp - 0x174], eax
jne 0x437e46
mov dword [ebp - 0x100], 1
jmp 0x437e4d
and dword [ebp - 0x100], 0
cmp dword [ebp - 0x100], 0x65f4b3f4
jg 0x437e65
mov dword [ebp - 0x150], 1
jmp 0x437e6c
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 0x150]
dec eax
mov dword [ebp - 0x2c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp + eax - 4]
imul eax, ecx, 0x5d9c
push 4
pop ecx
imul ecx, ecx, 0
cmp dword [ebp + ecx - 4], eax
jg 0x437ea1
mov dword [ebp - 0x108], 1
jmp 0x437ea8
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 4]
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x270], eax
cmp dword [ebp - 0x7c], 0x176
jl 0x437edc
mov dword [ebp - 0x178], 1
jmp 0x437ee3
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0
je 0x437efe
mov dword [ebp - 0x110], 1
jmp 0x437f05
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 0x110]
mov ecx, dword [ebp - 0x18]
cmp eax, dword [ebp + ecx*4 - 4]
jne 0x437f24
mov dword [ebp - 0x158], 1
jmp 0x437f2b
and dword [ebp - 0x158], 0
mov dword [ebp - 0x8c], 0xf2e9
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x158]
add ecx, dword [ebp + eax*4 - 4]
mov dword [ebp - 0x1e0], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1e0]
mov dword [ebp + eax - 0x238], ecx
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 4], 0x2b782624
jle 0x437f80
mov dword [ebp - 0x118], 1
jmp 0x437f87
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x118]
sub eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x58]
je 0x437fa7
cmp dword [ebp - 8], 0
je 0x437fa7
mov dword [ebp - 0x188], 1
jmp 0x437fae
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x7c], 0
jne 0x437fc9
mov dword [ebp - 0x128], 1
jmp 0x437fd0
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 4], 0
je 0x437fea
xor eax, eax
je 0x437fea
mov dword [ebp - 0xa8], 1
jmp 0x437ff1
and dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0xa8], eax
jg 0x438008
mov dword [ebp - 0x160], 1
jmp 0x43800f
and dword [ebp - 0x160], 0
cmp dword [ebp - 0x160], 0xffffffff
je 0x438024
mov dword [ebp - 0x180], 1
jmp 0x43802b
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x128]
add eax, 7
sub eax, dword [ebp - 0x180]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
sub eax, dword [ebp - 0x58]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x43806e
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 4], 0
je 0x43806e
mov dword [ebp - 0x168], 1
jmp 0x438075
and dword [ebp - 0x168], 0
cmp dword [ebp - 0x168], 7
jne 0x43808a
mov dword [ebp - 0x138], 1
jmp 0x438091
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x138]
cmp eax, dword [ebp - 0x2c]
je 0x4380ab
mov dword [ebp - 0x170], 1
jmp 0x4380b2
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x170], eax
jge 0x4380c9
mov dword [ebp - 0x140], 1
jmp 0x4380d0
and dword [ebp - 0x140], 0
cmp dword [ebp - 0x140], 0
ja 0x4380e5
mov dword [ebp - 0xe8], 1
jmp 0x4380ec
and dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x438109
xor eax, eax
inc eax
jne 0x438109
and dword [ebp - 0xec], 0
jmp 0x438113
mov dword [ebp - 0xec], 1
cmp dword [ebp - 0xec], 0xffffffff
jne 0x438128
mov dword [ebp - 0xf4], 1
jmp 0x43812f
and dword [ebp - 0xf4], 0
cmp dword [ebp - 0xf4], 0x35453f20
jl 0x43814c
xor eax, eax
inc eax
je 0x43814c
mov dword [ebp - 0xfc], 1
jmp 0x438153
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0xfc]
sub eax, 0x83c1
jne 0x438173
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 4], 0
jne 0x438173
and dword [ebp - 0x104], 0
jmp 0x43817d
mov dword [ebp - 0x104], 1
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x7c], eax
jmp 0x437dc2
jmp 0x437d66
mov dword [ebp - 0x54], 0xf
jmp 0x4381a0
mov eax, dword [ebp - 0x54]
dec eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0xfffffff5
jg 0x438269
mov dword [ebp - 0x2c], 0
jmp 0x4381ba
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jg 0x438264
mov dword [ebp - 0x28], 0
jmp 0x4381d4
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x43825f
mov dword [ebp - 0x44], 0
jmp 0x4381ee
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jg 0x43825a
mov byte [ebp - 0x39], 0
movzx eax, byte [ebp - 0x39]
test eax, eax
je 0x43820d
push 0x9a5
push 0
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
mov eax, 0x3bf1
test eax, eax
je 0x438245
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 4]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x10c]
mov dword [ebp + eax*4 - 4], ecx
cmp dword [ebp - 0x10c], 0
je 0x438245
mov dword [ebp - 0x114], 1
jmp 0x43824c
and dword [ebp - 0x114], 0
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x8c], eax
jmp 0x4381e7
jmp 0x4381cd
jmp 0x4381b3
jmp 0x438199
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x14], 9
mov dword [ebp - 0xac], 0x4e20eeb
mov dword [ebp - 0x1bc], 0x38fd2320
mov dword [ebp - 0x14], 0
jmp 0x4382a0
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x14
jle 0x438725
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x64], 0
jmp 0x4382c1
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x4382d7
mov eax, dword [ebp - 0x64]
mov dword [ebp + eax*4 - 0x198], 0xfffffff6
jmp 0x4382ba
mov dword [ebp - 0x4c], 0
jmp 0x4382e7
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 9
je 0x438720
mov dword [ebp - 0x1c], 0xffffffff
cmp dword [ebp - 0x14], 0
je 0x438302
cmp dword [ebp - 0x1c], 0
cmp dword [ebp - 0x4c], 0
jne 0x43837e
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x268], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x14], 0
je 0x438332
cmp dword [ebp - 0x1c], 0
je 0x438332
mov dword [ebp - 0x11c], 1
jmp 0x438339
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x11c]
add eax, 0x53f0d3ec
mov dword [ebp - 0x124], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x124]
mov dword [ebp + eax - 0x198], ecx
cmp dword [ebp - 0x124], 0
je 0x43836c
cmp dword [ebp - 0x1c], 0
jne 0x43837e
mov eax, 0x32c5
test eax, eax
jne 0x43837e
and dword [ebp - 0x12c], 0
jmp 0x438388
mov dword [ebp - 0x12c], 1
cmp dword [ebp - 0x12c], 0x4adc
jg 0x438398
cmp dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
je 0x438710
or eax, 0xffffffff
je 0x438710
mov dword [ebp - 0x1e8], 0x7758a8c
push 4
lea ecx, [ebp - 0x1d0]
call fcn.00413ed8
mov dword [ebp - 0x6c], 0
jmp 0x4383d4
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 4
jge 0x4383f0
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x1d0]
call fcn.00413f7a
mov dword [eax], 0x600bf094
jmp 0x4383cd
mov dword [ebp - 0x1c], 2
jmp 0x438400
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x438703
mov dword [ebp - 0x224], 0x46e74a6e
mov dword [ebp - 0x220], 0x46e74a6e
mov dword [ebp - 0x21c], 0x46e74a6e
mov dword [ebp - 0x218], 0x46e74a6e
lea ecx, [ebp - 0x8d]
call fcn.00401e75
push eax
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x294]
call fcn.00413f89
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1a8]
call fcn.00413f4b
push 1
lea ecx, [ebp - 0x1a8]
call fcn.00413f7a
and dword [eax], 0
jmp 0x43849d
push 1
lea ecx, [ebp - 0x1a8]
call fcn.00413f7a
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x134]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x134]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x1a8]
call fcn.00413f7a
cmp dword [eax], 2
jg 0x4386f3
mov dword [ebp - 0xd8], 1
push 1
lea ecx, [ebp - 0x1a8]
call fcn.00413f7a
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp + ecx*4 - 0x198]
cmp dword [ebp + eax*4 - 0x198], ecx
jl 0x43869e
mov dword [ebp - 0x9c], 0xfffffff8
mov byte [ebp - 0x30], 0
movzx eax, byte [ebp - 0x30]
test eax, eax
je 0x438508
push 0x14d5
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x1e8], eax
push 2
lea ecx, [ebp - 0x1a8]
call fcn.00413f7a
cmp dword [eax], 8
jge 0x438532
mov dword [ebp - 0x13c], 1
jmp 0x438539
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x198]
cmp eax, dword [ebp - 0x13c]
jg 0x438557
mov dword [ebp - 0x144], 1
jmp 0x43855e
and dword [ebp - 0x144], 0
mov esi, dword [ebp - 0x9c]
add esi, dword [ebp - 0x144]
push 0
lea ecx, [ebp - 0x1d0]
call fcn.00413f7a
cmp esi, dword [eax]
je 0x438587
mov dword [ebp - 0x94], 1
jmp 0x43858e
and dword [ebp - 0x94], 0
push 0
lea ecx, [ebp - 0x1d0]
call fcn.00413f7a
mov ecx, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0xac]
cmp dword [ebp - 0x94], eax
jl 0x4385bd
mov dword [ebp - 0xb0], 1
jmp 0x4385c4
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0x9c]
cmp dword [ebp - 0xb0], eax
jg 0x4385de
mov dword [ebp - 0xb8], 1
jmp 0x4385e5
and dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0x9c]
cmp dword [ebp - 0xb8], eax
jle 0x4385ff
mov dword [ebp - 0xc0], 1
jmp 0x438606
and dword [ebp - 0xc0], 0
mov eax, 0xa164e62b
sub eax, dword [ebp - 0xc0]
sub eax, 0x5f7f7777
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x198]
jl 0x438631
mov dword [ebp - 0xa4], 1
jmp 0x438638
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xa4]
mov dword [ebp + eax*4 - 0x198], ecx
xor eax, eax
inc eax
sub eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0xd8]
jg 0x438665
mov dword [ebp - 0xc8], 1
jmp 0x43866c
and dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 0x8af1
jne 0x438684
mov dword [ebp - 0xd0], 1
jmp 0x43868b
and dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0xd0]
sub eax, 0xad53
mov dword [ebp - 0xd8], eax
jmp 0x4386ee
mov byte [ebp - 0x2e], 0
movzx eax, byte [ebp - 0x2e]
test eax, eax
je 0x4386b0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x198]
mov dword [ebp - 0xe0], eax
push 0
lea ecx, [ebp - 0x1d0]
call fcn.00413f7a
mov ecx, dword [ebp - 0xe0]
mov dword [eax], ecx
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0xe0]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x198], eax
jmp 0x438479
lea ecx, [ebp - 0x1a8]
call fcn.00413f75
jmp 0x4383f9
lea ecx, [ebp - 0x1d0]
call fcn.00413f75
jmp 0x43871b
cmp dword [ebp - 0x1bc], 0
je 0x43871b
jmp 0x438720
jmp 0x4382e0
jmp 0x438299
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x5c]
mov dword [eax], 0
jmp 0x438750
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x5c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x5c]
cmp dword [eax], 2
jge 0x43876d
mov eax, dword [ebp - 0x5c]
push dword [eax]
mov ecx, dword [ebp - 0x1e4]
call fcn.00413f7a
and dword [eax], 0
jmp 0x438745
pop esi
mov esp, ebp
pop ebp
ret