Function at 0x4011a0
Capabilities:
Accept command line arguments
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
push esi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 4], 0
push 0x4241b8
push 0
call fcn.004090e0
add esp, 8
push 0xd
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4 - 4]
push edx
call fcn.00408363
add esp, 8
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
je 0x401209
mov eax, dword [ebp - 0x6c]
mov word [eax], 0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
push edx
call fcn.00401fa0
add esp, 4
mov dword [0x424178], eax
cmp dword [0x424178], 0
jne 0x40124a
push 0x7d1
call fcn.0040790f
add esp, 4
mov dword [0x424178], eax
push 0x7d0
mov eax, dword [0x424178]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00401bd0
add esp, 8
test eax, eax
je 0x401294
push 0x4241b4
push 0x4241b0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x424178]
push edx
call fcn.004041a0
add esp, 0x10
test eax, eax
jne 0x401294
mov eax, dword [0x4241b4]
push eax
push 0x4241b0
call fcn.00401c30
add esp, 8
cmp dword [0x424198], 0
jne 0x4012d8
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00401bd0
add esp, 8
test eax, eax
je 0x4012d8
push 0x4226cc
call fcn.00402a80
add esp, 4
test eax, eax
je 0x4012d8
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call fcn.00402e80
add esp, 4
push 0
call fcn.004082d7
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp + 8]
push ecx
call fcn.00401c30
add esp, 8
cmp dword [0x4241b0], 1
jle 0x40130f
lea edx, [ebp + 0xc]
push edx
lea eax, [ebp + 8]
push eax
mov ecx, dword [0x4241b4]
push ecx
mov edx, dword [0x4241b0]
push edx
call fcn.00401dc0
add esp, 0x10
cmp dword [0x4241a8], 0
je 0x40132b
mov eax, dword [0x4241a8]
push eax
call fcn.00408008
add esp, 4
mov dword [ebp - 0x7c], eax
jmp 0x401333
call fcn.004028d0
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x7c]
mov dword [0x424174], ecx
xor edx, edx
cmp dword [0x42419c], 0
setne dl
push edx
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp + 8]
push ecx
call fcn.004031f0
add esp, 0xc
call fcn.00402960
mov dword [0x42417c], eax
cmp dword [0x42417c], 0
jne 0x4013db
mov edx, dword [0x4223f0]
push edx
call fcn.00407ff2
add esp, 4
mov esi, eax
mov eax, dword [0x424174]
push eax
call fcn.00407ff2
add esp, 4
add esi, eax
lea ecx, [esi + esi + 0x14]
push ecx
call fcn.0040790f
add esp, 4
mov dword [ebp - 0x48], eax
mov edx, dword [0x424174]
push edx
mov eax, dword [0x4223f0]
push eax
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00407f5c
add esp, 0xc
mov edx, dword [ebp - 0x48]
push edx
mov eax, dword [0x424174]
push eax
call fcn.004031d0
add esp, 8
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00407832
add esp, 4
push 1
call fcn.004082d7
cmp dword [0x4241a0], 0
je 0x40146b
cmp dword [ebp + 8], 1
jle 0x4013f9
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov dword [ebp - 0x80], eax
jmp 0x401400
mov dword [ebp - 0x80], 0
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x60], ecx
cmp dword [ebp - 0x60], 0
je 0x401428
mov edx, dword [ebp - 0x60]
push edx
call fcn.00407ff2
add esp, 4
cmp eax, 0x3fff
jbe 0x401428
mov dword [ebp - 0x44], 0x16
jmp 0x40143e
mov eax, dword [ebp - 0x60]
push eax
mov ecx, dword [0x4241a0]
push ecx
call fcn.00404070
add esp, 8
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
je 0x401462
cmp dword [0x424190], 0
je 0x401462
mov edx, dword [0x42212c]
push edx
mov eax, dword [0x424174]
push eax
call fcn.004031d0
add esp, 8
mov ecx, dword [ebp - 0x44]
push ecx
call fcn.004082d7
cmp dword [0x42419c], 0
je 0x40151d
cmp dword [ebp + 8], 1
jle 0x40151d
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x70]
push ecx
mov edx, dword [0x42419c]
push edx
call fcn.00403280
add esp, 8
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
je 0x401514
cmp dword [0x424190], 0
je 0x401514
mov eax, dword [0x4220f4]
push eax
call fcn.00407ff2
add esp, 4
mov esi, eax
mov ecx, dword [ebp - 0x70]
push ecx
call fcn.00407ff2
add esp, 4
add esi, eax
lea edx, [esi + esi + 0x14]
push edx
call fcn.0040790f
add esp, 4
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x70]
push eax
mov ecx, dword [0x4220f4]
push ecx
mov edx, dword [ebp - 0x48]
push edx
call fcn.00407f5c
add esp, 0xc
mov eax, dword [ebp - 0x48]
push eax
mov ecx, dword [0x424174]
push ecx
call fcn.004031d0
add esp, 8
mov edx, dword [ebp - 0x48]
push edx
call fcn.00407832
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
call fcn.004082d7
mov dword [ebp - 0x54], 2
mov dword [ebp - 0x50], 0x4226e4
mov ecx, dword [0x424178]
mov dword [ebp - 0x4c], ecx
lea edx, [ebp + 0xc]
push edx
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x50]
push ecx
mov edx, dword [ebp - 0x54]
push edx
call fcn.00401dc0
add esp, 0x10
cmp dword [0x4241a4], 0
jne 0x401677
cmp dword [0x424190], 0
jne 0x401578
cmp dword [0x42418c], 0
jne 0x401578
mov eax, dword [0x422950]
mov dword [ebp - 0x84], eax
jmp 0x401584
mov ecx, dword [0x422938]
mov dword [ebp - 0x84], ecx
mov edx, dword [ebp - 0x84]
mov dword [0x4241a4], edx
mov eax, dword [0x42417c]
push eax
call fcn.00407ff2
add esp, 4
mov esi, eax
mov ecx, dword [0x422968]
push ecx
call fcn.00407ff2
add esp, 4
add esi, eax
mov edx, dword [0x4241a4]
push edx
call fcn.00407ff2
add esp, 4
add esi, eax
lea eax, [esi + esi + 0x14]
push eax
call fcn.0040790f
add esp, 4
mov dword [ebp - 0x68], eax
mov ecx, dword [0x4241a4]
push ecx
mov edx, dword [0x422968]
push edx
mov eax, dword [0x42417c]
push eax
push 0x4226f0
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.00407f5c
add esp, 0x14
mov edx, dword [ebp - 0x68]
push edx
call fcn.00401fa0
add esp, 4
mov dword [0x424180], eax
mov eax, dword [0x4220ac]
push eax
call fcn.00407ff2
add esp, 4
mov esi, eax
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.00407ff2
add esp, 4
add esi, eax
mov edx, dword [0x4241a4]
push edx
call fcn.00407ff2
add esp, 4
add esi, eax
lea eax, [esi + esi + 0x14]
push eax
call fcn.0040790f
add esp, 4
mov dword [ebp - 0xc], eax
mov ecx, dword [0x4241a4]
push ecx
mov edx, dword [ebp - 0x68]
push edx
mov eax, dword [0x4220ac]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00407f5c
add esp, 0x10
mov edx, dword [ebp - 0x68]
push edx
call fcn.00407832
add esp, 4
mov dword [ebp - 0x68], 0
cmp dword [0x424180], 0
jne 0x40173b
mov eax, dword [0x4241a4]
push eax
call fcn.00401fa0
add esp, 4
mov dword [0x424180], eax
cmp dword [0x424180], 0
jne 0x40173b
cmp dword [ebp - 0xc], 0
je 0x4016b3
mov ecx, dword [ebp - 0xc]
mov dword [0x4241a4], ecx
mov edx, dword [0x42218c]
push edx
call fcn.00407ff2
add esp, 4
mov esi, eax
mov eax, dword [0x424174]
push eax
call fcn.00407ff2
add esp, 4
add esi, eax
mov ecx, dword [0x4241a4]
push ecx
call fcn.00407ff2
add esp, 4
add esi, eax
lea edx, [esi + esi + 0x14]
push edx
call fcn.0040790f
add esp, 4
mov dword [ebp - 0x48], eax
mov eax, dword [0x4241a4]
push eax
mov ecx, dword [0x424174]
push ecx
mov edx, dword [0x42218c]
push edx
mov eax, dword [ebp - 0x48]
push eax
call fcn.00407f5c
add esp, 0x10
mov ecx, dword [ebp - 0x48]
push ecx
mov edx, dword [0x424174]
push edx
call fcn.004031d0
add esp, 8
mov eax, dword [ebp - 0x48]
push eax
call fcn.00407832
add esp, 4
push 1
call fcn.004082d7
push 0x4000
push 0x424188
call fcn.00403e30
add esp, 8
test eax, eax
je 0x401779
cmp dword [0x424190], 0
je 0x401779
cmp dword [0x424190], 0
je 0x401779
mov ecx, dword [0x42212c]
push ecx
mov edx, dword [0x424174]
push edx
call fcn.004031d0
add esp, 8
mov eax, dword [0x42417c]
push eax
call fcn.00407ff2
add esp, 4
mov esi, eax
mov ecx, dword [0x42246c]
push ecx
call fcn.00407ff2
add esp, 4
add esi, eax
lea edx, [esi + esi + 2]
push edx
call fcn.0040790f
add esp, 4
mov dword [0x424184], eax
mov eax, dword [0x42417c]
push eax
mov ecx, dword [0x424184]
push ecx
call fcn.00407f40
add esp, 8
mov dword [0x424184], eax
mov edx, dword [0x42246c]
push edx
mov eax, dword [0x424184]
push eax
call fcn.00407f16
add esp, 8
mov dword [0x424184], eax
lea ecx, [ebp - 0x40]
push ecx
mov edx, dword [0x424184]
push edx
call fcn.00407bc3
add esp, 8
test eax, eax
je 0x401840
mov eax, dword [0x424184]
push eax
call fcn.00407832
add esp, 4
mov ecx, dword [0x42246c]
push ecx
call fcn.00407ff2
add esp, 4
lea edx, [eax + eax + 2]
push edx
call fcn.0040790f
add esp, 4
mov dword [0x424184], eax
mov eax, dword [0x42246c]
push eax
mov ecx, dword [0x424184]
push ecx
call fcn.00407f40
add esp, 8
mov dword [0x424184], eax
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00402390
add esp, 8
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x5c], ecx
cmp dword [ebp - 0x5c], 0
je 0x401ae8
mov edx, dword [ebp - 0x5c]
push edx
call fcn.004027d0
add esp, 4
mov dword [ebp - 4], eax
cmp dword [0x424190], 0
je 0x40188e
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [0x42206c]
push ecx
call fcn.00407a75
add esp, 8
mov edx, dword [ebp - 0x5c]
push edx
call fcn.00403a10
add esp, 4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4018c3
cmp dword [ebp - 0x88], 0x17
je 0x4018cf
cmp dword [ebp - 0x88], 0x18
je 0x4018d4
jmp 0x40193e
mov dword [ebp - 0x5c], 0
jmp 0x401ad7
jmp 0x401ad7
lea ecx, [ebp - 0x60]
push ecx
mov edx, dword [0x424188]
push edx
call fcn.00403f30
add esp, 8
test eax, eax
jne 0x401914
cmp dword [ebp - 0x58], 0
je 0x4018fd
mov eax, dword [ebp - 0x58]
push eax
call fcn.00401e50
add esp, 4
mov ecx, dword [ebp - 0x60]
push ecx
call fcn.00401e80
add esp, 4
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x5c], edx
jmp 0x401939
mov dword [ebp - 0x5c], 0
cmp dword [0x424190], 0
je 0x401939
mov eax, dword [0x42212c]
push eax
mov ecx, dword [0x424174]
push ecx
call fcn.004031d0
add esp, 8
jmp 0x401ad7
mov edx, dword [0x424174]
push edx
call fcn.00408008
add esp, 4
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x48], 0
lea eax, [ebp - 0x48]
push eax
mov ecx, dword [0x424188]
push ecx
call fcn.00403f30
add esp, 8
test eax, eax
jne 0x401a44
mov edx, dword [ebp - 0x48]
push edx
call fcn.00407ff2
add esp, 4
test eax, eax
jne 0x4019a1
mov eax, dword [ebp - 0x48]
push eax
call fcn.00407832
add esp, 4
mov dword [ebp - 0x48], 0
jmp 0x401a42
push 0x422700
call fcn.00407ff2
add esp, 4
push eax
push 0x422710
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00407a40
add esp, 0xc
test eax, eax
jne 0x401a42
push 0x422720
mov edx, dword [ebp - 0x48]
push edx
call fcn.004079e1
add esp, 8
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
je 0x401a42
mov eax, dword [ebp - 0x74]
push eax
call fcn.00407832
add esp, 4
mov ecx, dword [ebp - 0x78]
mov word [ecx], 0
push 0x422734
call fcn.00407ff2
add esp, 4
mov edx, dword [ebp - 0x48]
lea eax, [edx + eax*2]
push eax
call fcn.00408008
add esp, 4
mov dword [ebp - 0x74], eax
push 0x422744
call fcn.00407ff2
add esp, 4
mov ecx, dword [ebp - 0x78]
lea edx, [ecx + eax*2]
push edx
call fcn.00408008
add esp, 4
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x48]
push eax
call fcn.00407832
add esp, 4
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x48], ecx
jmp 0x401a60
cmp dword [0x424190], 0
je 0x401a60
mov edx, dword [0x42212c]
push edx
mov eax, dword [ebp - 0x74]
push eax
call fcn.004031d0
add esp, 8
cmp dword [ebp - 0x48], 0
jne 0x401aaf
mov ecx, dword [0x42200c]
push ecx
call fcn.00407ff2
add esp, 4
mov esi, eax
mov edx, dword [ebp - 4]
push edx
call fcn.00407ff2
add esp, 4
add esi, eax
lea eax, [esi + esi + 0x14]
push eax
call fcn.0040790f
add esp, 4
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [0x42200c]
push eax
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00407f5c
add esp, 0x10
mov edx, dword [ebp - 0x48]
push edx
mov eax, dword [ebp - 0x74]
push eax
call fcn.004031d0
add esp, 8
mov ecx, dword [ebp - 0x74]
push ecx
call fcn.00407832
add esp, 4
mov edx, dword [ebp - 0x48]
push edx
call fcn.00407832
add esp, 4
mov eax, dword [ebp - 4]
push eax
call fcn.00407832
add esp, 4
jmp 0x401859
mov ecx, dword [0x424184]
push ecx
call fcn.00407832
add esp, 4
mov edx, dword [0x42417c]
push edx
call fcn.00407832
add esp, 4
mov eax, dword [0x424178]
push eax
call fcn.00407832
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x401b26
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00407832
add esp, 4
cmp dword [ebp - 0x58], 0
je 0x401b38
mov edx, dword [ebp - 0x58]
push edx
call fcn.00401e50
add esp, 4
cmp dword [0x4241b4], 0
je 0x401b4f
mov eax, dword [0x4241b4]
push eax
call fcn.00404380
add esp, 4
cmp dword [0x4241b0], 1
jle 0x401b64
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00407832
add esp, 4
mov edx, dword [0x424174]
push edx
call fcn.00407832
add esp, 4
cmp dword [0x424188], 0
je 0x401bbb
mov eax, dword [0x424188]
push eax
call fcn.00403e90
add esp, 4
test eax, eax
je 0x401bad
cmp dword [0x424190], 0
je 0x401bad
mov ecx, dword [0x42212c]
push ecx
mov edx, dword [0x424174]
push edx
call fcn.004031d0
add esp, 8
mov eax, dword [0x424188]
push eax
call fcn.00407832
add esp, 4
call fcn.004029e0
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret