Function at 0x10058e6
Capabilities:
Terminate process

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [0x1009040]
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x10], 1
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x2c], edi
mov byte [ebp - 1], 0
mov dword [ebp - 0x1c], edi
mov dword [ebp - 8], edi
cmp eax, 6
je 0x10059c9
xor ecx, ecx
mov ebx, dword [ecx + 0x1009030]
test ebx, 0xff0000
je 0x1005951
test byte [ecx + 0x1009044], 0x20
jne 0x1005951
inc dword [ebp - 0x20]
cmp dword [ecx + 0x1009058], edi
je 0x1005951
inc dword [ebp - 0x18]
mov edx, dword [ecx + 0x1009044]
mov esi, edx
and esi, 0x20
je 0x1005967
mov dword [ebp - 0x28], 1
xor edi, edi
cmp dword [ecx + 0x1009058], edi
je 0x10059a7
cmp esi, edi
jne 0x100598a
test edx, 0x100000
jne 0x100598a
cmp eax, 3
je 0x10059a7
cmp eax, 4
je 0x10059a7
inc dword [ebp - 0x24]
jmp 0x10059a7
movzx eax, word [ecx + 0x1009060]
inc dword [ebp - 0xc]
or dword [ebp - 0x2c], eax
cmp ebx, edi
je 0x10059a7
mov cl, byte [ecx + 0x1009033]
and cl, 0xf
mov byte [ebp - 1], cl
inc dword [ebp - 8]
mov ecx, dword [ebp - 8]
shl ecx, 6
mov eax, dword [ecx + 0x1009040]
cmp eax, 6
jne 0x100592c
cmp dword [ebp - 0x24], edi
jne 0x10059d0
cmp dword [ebp - 0xc], edi
jne 0x10059d0
mov dword [ebp - 0x14], 1
call fcn.010034fa
cmp dword [ebp - 0x14], edi
je 0x1005a07
movsx eax, word [0x1009448]
push edi
push eax
push edi
push edi
push 0x1f4
call fcn.0100335a
test eax, eax
jne 0x1005a07
movzx eax, word [0x1009460]
push 0x1001330
push eax
call fcn.010029a4
pop ecx
pop ecx
movzx eax, word [0x1009460]
push 0x236
push eax
call fcn.01003284
push dword [0x100944c]
movzx eax, word [0x1009460]
mov edi, 0x1001738
push edi
push eax
call fcn.010029a4
add esp, 0x14
cmp dword [ebp - 0x28], 0
mov dword [ebp - 8], eax
je 0x1005aa9
xor ebx, ebx
cmp dword [ebp - 0x14], ebx
jne 0x1005a92
xor esi, esi
cmp dword [0x1009040], 6
je 0x1005a92
xor eax, eax
test byte [eax + 0x1009044], 0x20
je 0x1005a7f
cmp dword [eax + 0x1009058], 0
je 0x1005a7f
push dword [eax + 0x1009034]
movzx eax, word [0x1009460]
push edi
push eax
call fcn.010029a4
add dword [ebp - 8], eax
add esp, 0xc
inc ebx
inc esi
mov eax, esi
shl eax, 6
cmp dword [eax + 0x1009040], 6
jne 0x1005a52
test ebx, ebx
jne 0x1005aa9
movzx eax, word [0x1009460]
push 0x230
push eax
call fcn.01003284
add dword [ebp - 8], eax
pop ecx
pop ecx
cmp dword [ebp - 0x20], 1
jle 0x1005acc
cmp dword [ebp - 0x18], 0
jne 0x1005acc
movzx eax, word [0x1009460]
push 0x1001730
push eax
call fcn.010029a4
add dword [ebp - 8], eax
pop ecx
pop ecx
and dword [ebp - 0xc], 0
xor edi, edi
cmp dword [0x1009040], 6
je 0x1005c4a
xor esi, esi
cmp dword [ebp - 0xc], 0
jne 0x1005b19
test byte [esi + 0x1009044], 0x30
jne 0x1005c37
test dword [esi + 0x1009030], 0xff0000
je 0x1005c37
cmp dword [ebp - 0x18], 0
jle 0x1005b36
cmp dword [esi + 0x1009058], 0
je 0x1005c37
jmp 0x1005b36
test byte [esi + 0x1009044], 0x31
jne 0x1005c37
test dword [esi + 0x1009030], 0xff0000
jne 0x1005c37
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x1005b5e
cmp dword [ebp - 0x20], eax
je 0x1005b5e
cmp dword [ebp - 0x18], eax
jne 0x1005b5e
movzx eax, word [0x1009460]
push 0x1001728
push eax
call fcn.010029a4
add dword [ebp - 8], eax
pop ecx
pop ecx
mov ebx, dword [esi + 0x1009044]
and dword [ebp - 0x10], 0
test bl, 8
je 0x1005b8a
push dword [esi + 0x100903c]
movzx eax, word [0x1009460]
push 0x1001738
push eax
call fcn.010029a4
add esp, 0xc
jmp 0x1005bf0
lea eax, [esi + 0x1009028]
push eax
call fcn.01001a24
mov edx, 0x1001270
test eax, eax
jne 0x1005ba4
mov edx, 0x1001214
mov ecx, 0x100142c
test ebx, 0x10000
jne 0x1005bb6
mov ecx, 0x1001214
movzx eax, word [0x1009464]
test bl, 0x20
jne 0x1005bc9
movzx eax, word [section..data]
push dword [esi + 0x100903c]
movzx eax, ax
push edx
push dword [esi + 0x1009038]
push ecx
push eax
movzx eax, word [0x1009460]
push 0x10016f0
push eax
call fcn.010029a4
add esp, 0x1c
add dword [ebp - 8], eax
movsx eax, word [0x1009448]
sub eax, 0xf
cmp dword [ebp - 8], eax
jle 0x1005c37
movzx eax, word [0x1009460]
push 0x1001330
push eax
call fcn.010029a4
pop ecx
pop ecx
push 0x20
pop esi
movzx eax, word [0x1009460]
push 0x1001270
push eax
call fcn.010029a4
dec esi
pop ecx
pop ecx
jne 0x1005c19
mov dword [ebp - 8], 0x21
inc edi
mov esi, edi
shl esi, 6
cmp dword [esi + 0x1009040], 6
jne 0x1005ae1
xor edi, edi
cmp dword [ebp - 0xc], edi
jne 0x1005c70
cmp dword [ebp - 0x20], 1
jle 0x1005c70
cmp dword [ebp - 0x18], edi
jne 0x1005c70
movzx eax, word [0x1009460]
push 0x10016e8
push eax
call fcn.010029a4
pop ecx
pop ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x1005ad0
movzx eax, word [0x1009460]
push 0x232
push eax
call fcn.01003284
pop ecx
pop ecx
cmp dword [ebp - 0x28], edi
je 0x1005dbd
cmp dword [0x1009040], 6
mov dword [ebp - 0x10], 1
mov dword [ebp - 8], edi
je 0x1005dbd
xor esi, esi
mov eax, dword [esi + 0x1009044]
test al, 0x10
je 0x1005cc9
cmp dword [esi + 0x1009058], edi
je 0x1005d8e
test al, 0x20
je 0x1005d8e
cmp dword [ebp - 0x14], edi
jne 0x1005ce2
cmp dword [esi + 0x1009058], edi
je 0x1005d8e
cmp dword [ebp - 0x10], edi
je 0x1005cfe
movzx eax, word [0x1009460]
push 0x231
push eax
call fcn.01003284
pop ecx
pop ecx
mov dword [ebp - 0x10], edi
mov edx, dword [esi + 0x1009038]
cmp edx, edi
je 0x1005d1d
mov eax, edx
lea ebx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x1005d0d
sub eax, ebx
sar eax, 1
jne 0x1005d23
mov edx, dword [esi + 0x1009034]
test dword [esi + 0x1009044], 0x110
movzx eax, word [0x100945c]
jne 0x1005d3d
movzx eax, word [0x1009460]
push dword [esi + 0x100903c]
push edx
push 0x1009464
push 0x10016c0
push eax
call fcn.010029a4
mov edi, eax
add esp, 0x14
cmp edi, 0x20
jle 0x1005d74
movzx eax, word [0x1009460]
push 0x1001270
push eax
call fcn.010029a4
pop ecx
pop ecx
add edi, eax
movsx eax, word [0x1009448]
push 1
push eax
push 0x20
push edi
push dword [esi + 0x1009028]
call fcn.0100335a
xor edi, edi
inc dword [ebp - 8]
mov esi, dword [ebp - 8]
shl esi, 6
cmp dword [esi + 0x1009040], 6
jne 0x1005cb3
cmp dword [ebp - 0x10], edi
jne 0x1005dbd
movzx eax, word [0x1009460]
push 0x1001330
push eax
call fcn.010029a4
pop ecx
pop ecx
mov dword [ebp - 0xc], edi
and dword [ebp - 8], 0
cmp dword [0x1009040], 6
mov dword [ebp - 0x10], 1
je 0x1006000
xor esi, esi
mov dword [ebp - 0x20], 0x1009040
cmp dword [ebp - 0xc], 0
mov eax, dword [esi + 0x1009044]
jne 0x1005ea0
test al, 8
je 0x1005fe5
test eax, 0x100020
jne 0x1005fe5
cmp dword [ebp - 0x14], 0
jne 0x1005e16
mov ecx, dword [ebp - 0x20]
cmp dword [ecx], 3
je 0x1005fe5
test al, 0x10
je 0x1005e27
cmp dword [esi + 0x1009058], 0
je 0x1005fe5
cmp dword [ebp - 0x14], 0
jne 0x1005e54
cmp dword [esi + 0x1009058], 0
jne 0x1005e54
mov eax, dword [esi + 0x1009060]
and eax, dword [ebp - 0x2c]
test eax, 0xffff
je 0x1005fe5
cmp dword [ebp - 0x24], 1
jge 0x1005fe5
mov eax, dword [esi + 0x1009030]
shr eax, 0x1c
and al, byte [ebp - 1]
test al, 0xf
jne 0x1005fe5
xor edi, edi
cmp dword [ebp - 0x10], edi
je 0x1005ecb
mov eax, dword [ebp - 0xc]
sub eax, edi
je 0x1005ead
dec eax
jne 0x1005ec8
mov eax, 0x1001330
cmp dword [ebp - 0x30], edi
jne 0x1005e88
mov eax, 0x1001214
push eax
movzx eax, word [0x1009460]
push 0x234
push eax
call fcn.01003284
add esp, 0xc
jmp 0x1005ec8
test al, 8
jne 0x1005fe5
jmp 0x1005df9
movzx eax, word [0x1009460]
push 0x233
push eax
call fcn.01003284
pop ecx
pop ecx
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x10], edi
mov ebx, dword [esi + 0x1009038]
cmp ebx, edi
je 0x1005eef
mov eax, ebx
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, di
jne 0x1005eda
sub eax, edx
sar eax, 1
je 0x1005eef
xor edi, edi
inc edi
jmp 0x1005ef1
xor edi, edi
mov eax, dword [esi + 0x1009044]
test al, 8
je 0x1005f26
test eax, 0x110
movzx eax, word [0x100945c]
jne 0x1005f10
movzx eax, word [0x1009460]
push dword [esi + 0x100903c]
push 0x10016ac
push eax
call fcn.010029a4
add esp, 0xc
jmp 0x1005f76
mov edx, ebx
test edi, edi
jne 0x1005f32
mov edx, dword [esi + 0x1009034]
mov ecx, 0x100142c
test eax, 0x10000
jne 0x1005f43
mov ecx, 0x1001214
test eax, 0x110
movzx eax, word [0x100945c]
jne 0x1005f58
movzx eax, word [0x1009460]
push dword [esi + 0x100903c]
push edx
push ecx
movzx ecx, word [section..data]
push ecx
push 0x1001678
push eax
call fcn.010029a4
add esp, 0x18
mov ebx, eax
cmp ebx, 0x20
jle 0x1005f93
movzx eax, word [0x1009460]
push 0x1001670
push eax
call fcn.010029a4
pop ecx
pop ecx
add ebx, eax
test dword [esi + 0x1009044], 0x10000
je 0x1005fba
cmp dword [ebp - 0x1c], 0
jne 0x1005fba
test edi, edi
je 0x1005fb1
mov eax, dword [esi + 0x1009038]
jmp 0x1005fb7
mov eax, dword [esi + 0x1009034]
mov dword [ebp - 0x1c], eax
movsx eax, word [0x1009448]
push 1
push eax
push 0x20
push ebx
push dword [esi + 0x1009028]
call fcn.0100335a
cmp dword [ebp - 0x14], 0
jne 0x1005fe5
mov eax, dword [ebp - 0x20]
cmp dword [eax], 7
jne 0x1005fe5
call fcn.01005560
inc dword [ebp - 8]
mov esi, dword [ebp - 8]
shl esi, 6
lea eax, [esi + 0x1009040]
cmp dword [eax], 6
mov dword [ebp - 0x20], eax
jne 0x1005de1
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x1005dc0
cmp dword [ebp - 0x1c], 0
je 0x100602e
push dword [ebp - 0x1c]
movzx eax, word [0x1009460]
push dword [ebp - 0x1c]
push 0x23d
push eax
call fcn.01003284
add esp, 0x10
cmp dword [ebp - 0x14], 0
je 0x1006048
movzx eax, word [0x1009460]
push 0x23e
push eax
call fcn.01003284
pop ecx
pop ecx
xor edi, edi
inc edi
xor ebx, ebx
cmp dword [0x1009040], 6
je 0x10060bd
xor esi, esi
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x1006067
cmp dword [esi + 0x1009058], eax
jmp 0x1006076
cmp dword [ebp - 0x28], eax
je 0x1006078
test dword [esi + 0x1009044], 0x100020
je 0x10060ae
test byte [esi + 0x1009044], 0x80
je 0x10060ae
cmp edi, eax
je 0x100609b
movzx eax, word [0x1009460]
push 0x242
push eax
call fcn.01003284
pop ecx
pop ecx
xor edi, edi
push 0
push 0x50
push 2
push 0
push dword [esi + 0x100902c]
call fcn.0100335a
inc ebx
mov esi, ebx
shl esi, 6
cmp dword [esi + 0x1009040], 6
jne 0x1006058
call fcn.01001dac
push 0
call dword [sym.imp.msvcrt.dll_exit]
int3