Function at 0x1007c780
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10091465
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xe0
push ebx
push esi
mov esi, edx
mov dword [esp + 0x2c], esi
push edi
push 0
pop ebx
test cl, cl
je 0x1007c97e
mov dword [esp + 0xc], 0x6bb8
cmp dword [esp + 0xc], 0x6c34
jle 0x1007c878
mov ecx, ebx
mov dword [esp + 0x28], ebx
mov esi, ebx
mov dword [esp + 0x1c], ebx
mov eax, ebx
mov dword [esp + 0x14], ebx
mov edi, ebx
mov dword [esp + 0x24], ebx
cdq
idiv edi
and edx, esi
or edx, ecx
mov eax, edx
cdq
mov edi, eax
mov esi, edx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push esi
push edi
lea ecx, [esp + 0xc0]
mov dword [esp + 0x3c], eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1007c813
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push ebx
push 1
lea ecx, [esp + 0xc0]
call fcn.10025af4
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
inc edi
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], edi
cmp edi, 0x29be
jl 0x1007c7e3
inc eax
mov dword [esp + 0x14], eax
cmp eax, 0x7255
jl 0x1007c7dd
inc esi
mov dword [esp + 0x1c], esi
cmp esi, 0x7bd5
jl 0x1007c7d7
inc ecx
mov dword [esp + 0x28], ecx
cmp ecx, 0x10a2
jl 0x1007c7d1
mov esi, dword [esp + 0x30]
cmp dword [esp + 0xc], 0x696a
jge 0x1007c88d
push 0x10010188
call fcn.1008287d
pop ecx
cmp byte [ebp + 0x10], 0
je 0x1007c96a
mov esi, dword [ebp + 0xc]
mov dword [esi], ebx
cmp dword [esi], 0x1d
jg 0x1007cddb
mov edi, dword [ebp + 0x14]
mov eax, dword [ebp + 0x18]
xor edx, edx
mov dword [esp + 0xc], 0xcf257925
push 4
mov eax, dword [eax]
cmp dword [eax + 4], 0xc520
mov eax, dword [edi]
setg dl
xor ecx, ecx
cmp eax, edx
pop eax
setne cl
cmp eax, ecx
sbb ecx, ecx
neg ecx
sub ecx, 0xe434
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0xa6f
setg al
add dword [edi], eax
cmp dword [edi], ebx
je 0x1007c8f8
cmp dword [esi], ebx
je 0x1007c8f8
xor edx, edx
inc edx
jmp 0x1007c8fa
mov edx, ebx
mov ecx, dword [ebp + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
add eax, edx
cmp dword [esp + 0xc], eax
jne 0x1007c90c
mov eax, dword [edi]
mov ecx, dword [ecx]
push 4
pop eax
add ecx, eax
mov eax, dword [edi]
neg eax
cmp eax, dword [ecx]
je 0x1007c923
cmp dword [edi], ebx
jne 0x1007c923
mov ecx, ebx
jmp 0x1007c926
xor ecx, ecx
inc ecx
mov eax, dword [esp + 0xc]
xor edx, edx
cmp ecx, eax
mov ecx, dword [esi]
mov eax, dword [ebp + 0x18]
setg dl
sub ecx, edx
push 0x367a
mov eax, dword [eax]
mov dword [eax], ecx
lea eax, [esp + 0x26]
push eax
push ecx
push ebx
push ecx
mov byte [esp + 0x36], bl
mov ecx, 0x230
call fcn.1007bdae
add esp, 0x14
inc dword [esi]
cmp dword [esi], 0x1d
jle 0x1007c8a8
jmp 0x1007cddb
cmp byte [esi], 0
je 0x1007cddb
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
jmp 0x1007cddb
mov dword [esp + 0x30], 0x1137
cmp dword [esp + 0x30], 0x1168
jle 0x1007ca20
mov eax, ebx
mov dword [esp + 0x1c], ebx
mov ecx, eax
mov dword [esp + 0x24], 0x71e6
mov dword [esp + 0x14], ecx
mov eax, ebx
mov dword [esp + 0xc], ebx
add eax, ecx
cdq
mov edi, eax
mov esi, edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push esi
push edi
lea ecx, [esp + 0x90]
mov dword [esp + 0x3c], eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1007c9d7
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push ebx
push 1
lea ecx, [esp + 0x90]
call fcn.10025af4
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
inc eax
mov dword [esp + 0xc], eax
cmp eax, 0x35ce
jl 0x1007c9ae
dec ecx
dec dword [esp + 0x24]
mov dword [esp + 0x14], ecx
jne 0x1007c9a8
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, 0x1eb8
jl 0x1007c99a
cmp byte [ebp + 8], 0
je 0x1007cd42
push dword [esp + 0x34]
movdqa xmm0, xmmword [0x10010e40]
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x74]
mov dword [esp + 0x18], 1
push eax
mov dword [esp + 0x24], 0x176df7e
lea ecx, [esp + 0x58]
mov dword [esp + 0x48], 0xa25a9550
mov dword [esp + 0x44], 0xb9d6240
push ebx
movdqu xmmword [esp + 0x7c], xmm0
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.10026bff
mov dword [esp + 0xf4], ebx
mov dword [esp + 0x58], 0x6d0c81cf
mov dword [esp + 0x34], 9
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x10], 1
jl 0x1007cbf0
push 1
lea ecx, [esp + 0x44]
call fcn.100254f9
mov byte [esp + 0xf4], 1
lea edx, [esp + 0x40]
mov dword [esp + 0xc], 0x7c264f89
lea ecx, [esp + 0x2c]
mov dword [esp + 0x14], 0xffffffff
push ebx
call fcn.1007d920
pop ecx
mov dword [esp + 0x2c], ebx
jmp 0x1007cafd
mov eax, dword [esp + 0x2c]
mov dword [esp + eax*4 + 0x7c], 0x9fdb81fd
inc dword [esp + 0x2c]
cmp dword [esp + 0x2c], 3
jl 0x1007caed
push ecx
push ecx
push ebx
push ecx
mov byte [esp + 0x33], bl
lea edx, [esp + 0x33]
push 0x7ed2
mov ecx, 0x571c
call fcn.1007bd6b
mov eax, dword [esp + 0x54]
add esp, 0x14
mov ecx, 0x826243a5
cmp ecx, dword [eax]
mov eax, dword [esp + 0x18]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [esp + 0x40]
sete cl
xor edx, edx
cmp ecx, 0x697a
mov ecx, dword [eax]
mov eax, dword [esp + 0x3c]
setge dl
add ecx, 0x7d66
add ecx, edx
xor edx, edx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0x97d93cb
setge al
xor ecx, ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x24], eax
mov eax, dword [esp + 0x40]
setg cl
xor edx, edx
cmp dword [eax], ecx
mov ecx, dword [esp + 0x18]
sete dl
sub ecx, edx
neg ecx
sbb ecx, ecx
inc ecx
mov dword [esp + 0x84], ecx
mov eax, dword [esp + 0xc]
imul eax, ecx
xor ecx, ecx
cmp eax, 0x4592
setle cl
mov dword [esp + 0x18], ecx
cmp dword [esp + 0xc], 0x198f
jg 0x1007cbbc
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
neg eax
cmp eax, edx
setle cl
mov dword [esp + 0x38], ecx
lea ecx, [esp + 0x40]
mov byte [esp + 0xf4], bl
call fcn.1002557b
jmp 0x1007cc70
mov dword [esp + 0x18], ebx
jmp 0x1007cc69
mov dword [esp + 0x10], ebx
jmp 0x1007cc5e
push 1
lea ecx, [esp + 0x60]
call fcn.100254f9
push 0x4471
lea eax, [esp + 0x6c]
mov byte [esp + 0xf8], 2
push eax
push 0x1b6d
push 0x3380
push 0x5319
push ecx
push ebx
push 0x2b57
mov edx, 0x79e8
lea ecx, [esp + 0x7c]
call fcn.1007c30f
lea eax, [esp + 0x7c]
push eax
call fcn.1007ddff
add esp, 0x24
mov byte [esp + 0xf4], bl
lea ecx, [esp + 0x5c]
call fcn.1002557b
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 3
jle 0x1007cbfc
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 0xd
jle 0x1007cbf6
lea eax, [esp + 0x38]
push eax
push 0x2fee
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x5c]
push eax
push ecx
lea eax, [esp + 0x70]
mov ecx, 0x737a
push 1
push eax
lea edx, [esp + 0x30]
call fcn.1007c30f
mov dword [esp + 0x2c], 0x6e0d
add esp, 0x20
cmp dword [esp + 0xc], 0x6ff3
jle 0x1007cd1f
mov esi, ebx
mov edi, ebx
mov dword [esp + 0x14], ebx
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
mov word [esp + 0x28], ax
lea ecx, [esp + 0xa0]
lea eax, [edi + esi]
and eax, dword [esp + 0x14]
cdq
push edx
push eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1007cce7
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push ebx
push 1
lea ecx, [esp + 0xa8]
call fcn.10025af4
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, 0x20a9
jl 0x1007ccbc
inc edi
cmp edi, 0x585d
jl 0x1007ccb8
inc esi
cmp esi, 0x7327
jl 0x1007ccb6
cmp dword [esp + 0xc], 0x6be0
jge 0x1007cd34
push 0x10010220
call fcn.1008287d
pop ecx
lea ecx, [esp + 0x4c]
call fcn.1002557b
jmp 0x1007cdc6
mov dword [esp + 0xc], 0x75d8
cmp dword [esp + 0xc], 0x75e4
jle 0x1007cda9
mov esi, ebx
mov edi, ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x34], eax
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [esp + 0xd0]
cdq
push edx
push eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1007cd81
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push ebx
push 1
lea ecx, [esp + 0xd8]
call fcn.10025af4
inc edi
cmp edi, 0x79fe
jl 0x1007cd58
inc esi
cmp esi, 0x32ab
jl 0x1007cd56
cmp dword [esp + 0xc], 0x725b
jge 0x1007cdbe
push 0x1001026c
call fcn.1008287d
pop ecx
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax]
inc dword [eax + 8]
cmp dword [esp + 0x30], 0x1040
jge 0x1007cddb
push 0x100101c0
call fcn.1008287d
pop ecx
mov ecx, dword [esp + 0xec]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret