Function at 0x10229580
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x438
mov eax, dword [0x11ad127c]
xor eax, ebp
mov dword [ebp - 8], eax
cmp dword [0x11d0c744], 0
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, ecx
mov dword [ebp - 0x420], eax
push edi
mov edi, dword [esi]
je 0x102295d5
cmp dword [edi + 4], 0x58544e43
jne 0x102295d5
mov eax, dword fs:[0x2c]
mov ecx, dword [0x11d0c5b8]
mov ecx, dword [eax + ecx*4]
mov eax, dword [edi]
mov dword [ecx + 0x10], eax
mov dword [edi + 8], 0
jmp 0x102295d7
xor edi, edi
mov ebx, dword [edi + 0xf7c]
push 0x105
mov dword [ebp - 0x428], 0
mov dword [ebp - 0x434], 0
mov dword [ebp - 0x430], 0
call fcn.10450898
add esp, 4
mov dword [ebp - 0x42c], eax
test eax, eax
je 0x10229615
mov byte [eax], 0
mov eax, dword [edi]
inc dword [0x11d0d904]
mov edi, dword [0x11d0c5b8]
cmp dword [eax + 0xf944], 2
jb 0x1022964b
mov eax, dword fs:[0x2c]
mov byte [ebp - 0x415], 0
mov eax, dword [eax + edi*4]
mov eax, dword [eax + 0x10]
cmp dword [eax + 0xf940], 0
jne 0x10229652
mov byte [ebp - 0x415], 1
mov ecx, esi
call fcn.10229390
mov byte [ebp - 0x416], al
call fcn.10202240
mov edx, dword [esi + 0x53c8]
mov byte [ebp - 0x417], al
test edx, edx
je 0x1022968c
mov ecx, dword [edx + 4]
test ecx, 0x100
jne 0x1022968c
test al, al
je 0x1022968c
or ecx, 0x100
mov dword [edx + 4], ecx
cmp dword [ebp - 0x420], 0
jne 0x102296af
lea eax, [ebp - 0x434]
push 0
push 0x1046c220
mov ecx, eax
mov dword [ebp - 0x420], eax
call fcn.101ffd90
cmp byte [ebp - 0x415], 0
jne 0x102296e6
test byte [esi + 0xb0], 1
je 0x102296e6
mov eax, dword [esi]
mov eax, dword [eax + 0xf7c]
cmp byte [eax + 0xb38], 0
jge 0x102296d9
and byte [ebx + 0xb38], 0x7f
xor edx, edx
mov ecx, ebx
call fcn.100fd2d0
mov bh, 1
jmp 0x102296ec
mov bh, byte [ebp - 0x415]
test byte [esi + 0xab], 2
je 0x102297f4
mov eax, dword fs:[0x2c]
mov eax, dword [eax + edi*4]
mov dword [ebp - 0x41c], eax
mov eax, dword [eax + 0x10]
cmp dword [eax + 0xd590], 1
jne 0x102297f4
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
xor edx, edx
lea ecx, [ebp - 0x414]
mov bl, byte [eax]
test bl, bl
je 0x1022974f
mov edi, ecx
sub eax, edi
cmp edx, 0x400
jae 0x10229752
mov byte [ecx], bl
inc edx
mov bl, byte [eax + ecx + 1]
inc ecx
test bl, bl
jne 0x10229733
cmp edx, 0x400
jae 0x10229752
mov byte [ecx], 0
lea eax, [ebp - 0x414]
mov byte [ebp - 0x14], 0
push eax
call fcn.1043a9cb
lea ecx, [ebp - 0x414]
add esp, 4
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10229770
sub ecx, edx
cmp byte [ebp + ecx - 0x415], 0x22
jne 0x10229797
dec ecx
cmp ecx, 0x401
jae 0x10229a15
mov byte [ebp + ecx - 0x414], al
xor edi, edi
nop dword [eax]
mov eax, dword [edi + 0x1122b530]
test eax, eax
je 0x102297be
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.10425570
add esp, 8
test eax, eax
jne 0x102297e1
add edi, 4
cmp edi, 0x10
jb 0x102297a0
test byte [esi + 0xb3], 2
jne 0x102297e1
test byte [esi + 0xb0], 1
je 0x102297f4
test byte [esi + 0xa8], 0x10
jne 0x102297f4
mov eax, dword [ebp - 0x41c]
mov eax, dword [eax + 0x10]
or dword [eax + 0xd58c], 2
mov edi, dword [ebp - 0x420]
lea eax, [ebp - 0x41c]
push eax
push 0x1046e140
mov ecx, edi
mov dword [ebp - 0x41c], 0
call fcn.10200690
mov ecx, dword [0x11d0c5b8]
mov edx, dword fs:[0x2c]
mov eax, dword [edx + ecx*4]
mov ecx, dword [eax + 0x10]
mov eax, dword [ebp - 0x41c]
cmp dword [ecx + 0xd590], 1
jne 0x10229851
and eax, 0xfffffff3
mov dword [ebp - 0x41c], eax
test byte [ecx + 0xd58c], 2
jne 0x10229851
and eax, 0xfffffffc
mov bl, byte [esi + 0xab]
and bl, 2
je 0x1022986b
cmp dword [ecx + 0xf940], 1
jne 0x1022986b
mov bh, byte [ebp - 0x416]
test bh, bh
je 0x1022987c
test byte [esi + 0xb0], 0x40
jne 0x1022987c
mov dl, 1
jmp 0x1022987e
xor dl, dl
test byte [esi + 0xa4], 8
jne 0x102298f4
test bl, bl
je 0x1022988f
test dl, dl
je 0x102298f4
test al, 4
jne 0x1022989c
test byte [esi + 0xa8], 0x10
je 0x102298ba
cmp byte [ebp - 0x417], 0
je 0x102298ba
cmp dword [esi + 0xec], 0x20
je 0x102298ba
mov dword [esi + 0xc4], 2
jmp 0x102298f4
test al, 1
je 0x102298c7
cmp dword [esi + 0xec], 0x20
jne 0x102298e2
cmp dword [ecx + 0xd590], 1
jne 0x102298f4
cmp dword [esi + 0x53e8], 2
je 0x102298e2
test byte [ecx + 0xd58c], 2
je 0x102298f4
call fcn.101d0e60
neg eax
sbb eax, eax
neg eax
inc eax
mov dword [esi + 0xc4], eax
lea eax, [ebp - 0x424]
mov dword [ebp - 0x424], 0
push eax
push 0x1046f300
mov ecx, edi
call fcn.10200690
cmp dword [ebp - 0x424], 0
jne 0x1022992c
test byte [esi + 0xa4], 8
jne 0x10229936
test byte [esi + 0xa8], 0x10
je 0x10229936
mov dword [esi + 0x5404], 1
cmp dword [ebp - 0x430], 0
je 0x1022994a
lea ecx, [ebp - 0x434]
call fcn.102000a0
mov eax, dword [0x11d0d904]
dec eax
mov dword [0x11d0d904], eax
test eax, eax
jg 0x102299d3
mov eax, dword [0x11d0d920]
mov dword [0x11d0d920], 0
test eax, eax
je 0x10229975
push eax
call fcn.10450877
add esp, 4
mov eax, dword [0x11d0d918]
mov dword [0x11d0d918], 0
test eax, eax
je 0x10229991
push eax
call fcn.10450877
add esp, 4
mov eax, dword [0x11d0d91c]
mov dword [0x11d0d91c], 0
test eax, eax
je 0x102299ad
push eax
call fcn.10450877
add esp, 4
mov eax, dword [0x11d0d914]
mov dword [0x11d0d914], 0
test eax, eax
je 0x102299c9
push eax
call fcn.10450877
add esp, 4
mov dword [0x11d0d904], 0
mov eax, dword [ebp - 0x42c]
test eax, eax
je 0x102299e6
push eax
call fcn.10450877
add esp, 4
mov esi, dword [ebp - 0x428]
test esi, esi
je 0x10229a02
mov ecx, esi
call fcn.101ffa20
push 0x10
push esi
call fcn.1045088a
add esp, 8
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1045066c
mov esp, ebp
pop ebp
ret 4
call fcn.1045079c
int3