Function at 0x10058a2
Capabilities:
Terminate process

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [0x100a040]
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 0x1005985
xor ecx, ecx
mov ebx, dword [ecx + 0x100a030]
test ebx, 0xff0000
je 0x100590d
test byte [ecx + 0x100a044], 0x20
jne 0x100590d
inc dword [ebp - 0x20]
cmp dword [ecx + 0x100a058], edi
je 0x100590d
inc dword [ebp - 0x18]
mov edx, dword [ecx + 0x100a044]
mov esi, edx
and esi, 0x20
je 0x1005923
mov dword [ebp - 0x28], 1
xor edi, edi
cmp dword [ecx + 0x100a058], edi
je 0x1005963
cmp esi, edi
jne 0x1005946
test edx, 0x100000
jne 0x1005946
cmp eax, 3
je 0x1005963
cmp eax, 4
je 0x1005963
inc dword [ebp - 0x24]
jmp 0x1005963
movzx eax, word [ecx + 0x100a060]
inc dword [ebp - 0xc]
or dword [ebp - 0x2c], eax
cmp ebx, edi
je 0x1005963
mov cl, byte [ecx + 0x100a033]
and cl, 0xf
mov byte [ebp - 1], cl
inc dword [ebp - 8]
mov ecx, dword [ebp - 8]
shl ecx, 6
mov eax, dword [ecx + 0x100a040]
cmp eax, 6
jne 0x10058e8
cmp dword [ebp - 0x24], edi
jne 0x100598c
cmp dword [ebp - 0xc], edi
jne 0x100598c
mov dword [ebp - 0x14], 1
call fcn.010034aa
cmp dword [ebp - 0x14], edi
je 0x10059c3
movsx eax, word [0x100a3c8]
push edi
push eax
push edi
push edi
push 0x1f4
call fcn.0100330a
test eax, eax
jne 0x10059c3
movzx eax, word [0x100a3e0]
push 0x1001354
push eax
call fcn.01002954
pop ecx
pop ecx
movzx eax, word [0x100a3e0]
push 0x236
push eax
call fcn.01003234
push dword [0x100a3cc]
movzx eax, word [0x100a3e0]
mov edi, 0x1001814
push edi
push eax
call fcn.01002954
add esp, 0x14
cmp dword [ebp - 0x28], 0
mov dword [ebp - 8], eax
je 0x1005a65
xor ebx, ebx
cmp dword [ebp - 0x14], ebx
jne 0x1005a4e
xor esi, esi
cmp dword [0x100a040], 6
je 0x1005a4e
xor eax, eax
test byte [eax + 0x100a044], 0x20
je 0x1005a3b
cmp dword [eax + 0x100a058], 0
je 0x1005a3b
push dword [eax + 0x100a034]
movzx eax, word [0x100a3e0]
push edi
push eax
call fcn.01002954
add dword [ebp - 8], eax
add esp, 0xc
inc ebx
inc esi
mov eax, esi
shl eax, 6
cmp dword [eax + 0x100a040], 6
jne 0x1005a0e
test ebx, ebx
jne 0x1005a65
movzx eax, word [0x100a3e0]
push 0x230
push eax
call fcn.01003234
add dword [ebp - 8], eax
pop ecx
pop ecx
cmp dword [ebp - 0x20], 1
jle 0x1005a88
cmp dword [ebp - 0x18], 0
jne 0x1005a88
movzx eax, word [0x100a3e0]
push 0x100180c
push eax
call fcn.01002954
add dword [ebp - 8], eax
pop ecx
pop ecx
and dword [ebp - 0xc], 0
xor edi, edi
cmp dword [0x100a040], 6
je 0x1005c06
xor esi, esi
cmp dword [ebp - 0xc], 0
jne 0x1005ad5
test byte [esi + 0x100a044], 0x30
jne 0x1005bf3
test dword [esi + 0x100a030], 0xff0000
je 0x1005bf3
cmp dword [ebp - 0x18], 0
jle 0x1005af2
cmp dword [esi + 0x100a058], 0
je 0x1005bf3
jmp 0x1005af2
test byte [esi + 0x100a044], 0x31
jne 0x1005bf3
test dword [esi + 0x100a030], 0xff0000
jne 0x1005bf3
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x1005b1a
cmp dword [ebp - 0x20], eax
je 0x1005b1a
cmp dword [ebp - 0x18], eax
jne 0x1005b1a
movzx eax, word [0x100a3e0]
push 0x1001804
push eax
call fcn.01002954
add dword [ebp - 8], eax
pop ecx
pop ecx
mov ebx, dword [esi + 0x100a044]
and dword [ebp - 0x10], 0
test bl, 8
je 0x1005b46
push dword [esi + 0x100a03c]
movzx eax, word [0x100a3e0]
push 0x1001814
push eax
call fcn.01002954
add esp, 0xc
jmp 0x1005bac
lea eax, [esi + 0x100a028]
push eax
call fcn.01001c94
mov edx, 0x1001294
test eax, eax
jne 0x1005b60
mov edx, 0x1001244
mov ecx, 0x1001450
test ebx, 0x10000
jne 0x1005b72
mov ecx, 0x1001244
movzx eax, word [0x100a3e4]
test bl, 0x20
jne 0x1005b85
movzx eax, word [section..data]
push dword [esi + 0x100a03c]
movzx eax, ax
push edx
push dword [esi + 0x100a038]
push ecx
push eax
movzx eax, word [0x100a3e0]
push 0x10017cc
push eax
call fcn.01002954
add esp, 0x1c
add dword [ebp - 8], eax
movsx eax, word [0x100a3c8]
sub eax, 0xf
cmp dword [ebp - 8], eax
jle 0x1005bf3
movzx eax, word [0x100a3e0]
push 0x1001354
push eax
call fcn.01002954
pop ecx
pop ecx
push 0x20
pop esi
movzx eax, word [0x100a3e0]
push 0x1001294
push eax
call fcn.01002954
dec esi
pop ecx
pop ecx
jne 0x1005bd5
mov dword [ebp - 8], 0x21
inc edi
mov esi, edi
shl esi, 6
cmp dword [esi + 0x100a040], 6
jne 0x1005a9d
xor edi, edi
cmp dword [ebp - 0xc], edi
jne 0x1005c2c
cmp dword [ebp - 0x20], 1
jle 0x1005c2c
cmp dword [ebp - 0x18], edi
jne 0x1005c2c
movzx eax, word [0x100a3e0]
push 0x10017c4
push eax
call fcn.01002954
pop ecx
pop ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x1005a8c
movzx eax, word [0x100a3e0]
push 0x232
push eax
call fcn.01003234
pop ecx
pop ecx
cmp dword [ebp - 0x28], edi
je 0x1005d79
cmp dword [0x100a040], 6
mov dword [ebp - 0x10], 1
mov dword [ebp - 8], edi
je 0x1005d79
xor esi, esi
mov eax, dword [esi + 0x100a044]
test al, 0x10
je 0x1005c85
cmp dword [esi + 0x100a058], edi
je 0x1005d4a
test al, 0x20
je 0x1005d4a
cmp dword [ebp - 0x14], edi
jne 0x1005c9e
cmp dword [esi + 0x100a058], edi
je 0x1005d4a
cmp dword [ebp - 0x10], edi
je 0x1005cba
movzx eax, word [0x100a3e0]
push 0x231
push eax
call fcn.01003234
pop ecx
pop ecx
mov dword [ebp - 0x10], edi
mov edx, dword [esi + 0x100a038]
cmp edx, edi
je 0x1005cd9
mov eax, edx
lea ebx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x1005cc9
sub eax, ebx
sar eax, 1
jne 0x1005cdf
mov edx, dword [esi + 0x100a034]
test dword [esi + 0x100a044], 0x110
movzx eax, word [0x100a3dc]
jne 0x1005cf9
movzx eax, word [0x100a3e0]
push dword [esi + 0x100a03c]
push edx
push 0x100a3e4
push 0x100179c
push eax
call fcn.01002954
mov edi, eax
add esp, 0x14
cmp edi, 0x20
jle 0x1005d30
movzx eax, word [0x100a3e0]
push 0x1001294
push eax
call fcn.01002954
pop ecx
pop ecx
add edi, eax
movsx eax, word [0x100a3c8]
push 1
push eax
push 0x20
push edi
push dword [esi + 0x100a028]
call fcn.0100330a
xor edi, edi
inc dword [ebp - 8]
mov esi, dword [ebp - 8]
shl esi, 6
cmp dword [esi + 0x100a040], 6
jne 0x1005c6f
cmp dword [ebp - 0x10], edi
jne 0x1005d79
movzx eax, word [0x100a3e0]
push 0x1001354
push eax
call fcn.01002954
pop ecx
pop ecx
mov dword [ebp - 0xc], edi
and dword [ebp - 8], 0
cmp dword [0x100a040], 6
mov dword [ebp - 0x10], 1
je 0x1005fbc
xor esi, esi
mov dword [ebp - 0x20], 0x100a040
cmp dword [ebp - 0xc], 0
mov eax, dword [esi + 0x100a044]
jne 0x1005e5c
test al, 8
je 0x1005fa1
test eax, 0x100020
jne 0x1005fa1
cmp dword [ebp - 0x14], 0
jne 0x1005dd2
mov ecx, dword [ebp - 0x20]
cmp dword [ecx], 3
je 0x1005fa1
test al, 0x10
je 0x1005de3
cmp dword [esi + 0x100a058], 0
je 0x1005fa1
cmp dword [ebp - 0x14], 0
jne 0x1005e10
cmp dword [esi + 0x100a058], 0
jne 0x1005e10
mov eax, dword [esi + 0x100a060]
and eax, dword [ebp - 0x2c]
test eax, 0xffff
je 0x1005fa1
cmp dword [ebp - 0x24], 1
jge 0x1005fa1
mov eax, dword [esi + 0x100a030]
shr eax, 0x1c
and al, byte [ebp - 1]
test al, 0xf
jne 0x1005fa1
xor edi, edi
cmp dword [ebp - 0x10], edi
je 0x1005e87
mov eax, dword [ebp - 0xc]
sub eax, edi
je 0x1005e69
dec eax
jne 0x1005e84
mov eax, 0x1001354
cmp dword [ebp - 0x30], edi
jne 0x1005e44
mov eax, 0x1001244
push eax
movzx eax, word [0x100a3e0]
push 0x234
push eax
call fcn.01003234
add esp, 0xc
jmp 0x1005e84
test al, 8
jne 0x1005fa1
jmp 0x1005db5
movzx eax, word [0x100a3e0]
push 0x233
push eax
call fcn.01003234
pop ecx
pop ecx
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x10], edi
mov ebx, dword [esi + 0x100a038]
cmp ebx, edi
je 0x1005eab
mov eax, ebx
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, di
jne 0x1005e96
sub eax, edx
sar eax, 1
je 0x1005eab
xor edi, edi
inc edi
jmp 0x1005ead
xor edi, edi
mov eax, dword [esi + 0x100a044]
test al, 8
je 0x1005ee2
test eax, 0x110
movzx eax, word [0x100a3dc]
jne 0x1005ecc
movzx eax, word [0x100a3e0]
push dword [esi + 0x100a03c]
push 0x1001788
push eax
call fcn.01002954
add esp, 0xc
jmp 0x1005f32
mov edx, ebx
test edi, edi
jne 0x1005eee
mov edx, dword [esi + 0x100a034]
mov ecx, 0x1001450
test eax, 0x10000
jne 0x1005eff
mov ecx, 0x1001244
test eax, 0x110
movzx eax, word [0x100a3dc]
jne 0x1005f14
movzx eax, word [0x100a3e0]
push dword [esi + 0x100a03c]
push edx
push ecx
movzx ecx, word [section..data]
push ecx
push 0x1001754
push eax
call fcn.01002954
add esp, 0x18
mov ebx, eax
cmp ebx, 0x20
jle 0x1005f4f
movzx eax, word [0x100a3e0]
push 0x100174c
push eax
call fcn.01002954
pop ecx
pop ecx
add ebx, eax
test dword [esi + 0x100a044], 0x10000
je 0x1005f76
cmp dword [ebp - 0x1c], 0
jne 0x1005f76
test edi, edi
je 0x1005f6d
mov eax, dword [esi + 0x100a038]
jmp 0x1005f73
mov eax, dword [esi + 0x100a034]
mov dword [ebp - 0x1c], eax
movsx eax, word [0x100a3c8]
push 1
push eax
push 0x20
push ebx
push dword [esi + 0x100a028]
call fcn.0100330a
cmp dword [ebp - 0x14], 0
jne 0x1005fa1
mov eax, dword [ebp - 0x20]
cmp dword [eax], 7
jne 0x1005fa1
call fcn.0100551c
inc dword [ebp - 8]
mov esi, dword [ebp - 8]
shl esi, 6
lea eax, [esi + 0x100a040]
cmp dword [eax], 6
mov dword [ebp - 0x20], eax
jne 0x1005d9d
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x1005d7c
cmp dword [ebp - 0x1c], 0
je 0x1005fea
push dword [ebp - 0x1c]
movzx eax, word [0x100a3e0]
push dword [ebp - 0x1c]
push 0x23d
push eax
call fcn.01003234
add esp, 0x10
cmp dword [ebp - 0x14], 0
je 0x1006004
movzx eax, word [0x100a3e0]
push 0x23e
push eax
call fcn.01003234
pop ecx
pop ecx
xor edi, edi
inc edi
xor ebx, ebx
cmp dword [0x100a040], 6
je 0x1006079
xor esi, esi
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x1006023
cmp dword [esi + 0x100a058], eax
jmp 0x1006032
cmp dword [ebp - 0x28], eax
je 0x1006034
test dword [esi + 0x100a044], 0x100020
je 0x100606a
test byte [esi + 0x100a044], 0x80
je 0x100606a
cmp edi, eax
je 0x1006057
movzx eax, word [0x100a3e0]
push 0x242
push eax
call fcn.01003234
pop ecx
pop ecx
xor edi, edi
push 0
push 0x50
push 2
push 0
push dword [esi + 0x100a02c]
call fcn.0100330a
inc ebx
mov esi, ebx
shl esi, 6
cmp dword [esi + 0x100a040], 6
jne 0x1006014
call fcn.0100201c
push 0
call dword [sym.imp.msvcrt.dll_exit]
int3