Function at 0x5c97d4
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
push ebx
push esi
push edi
mov edi, ecx
xor esi, esi
mov ebx, edx
mov dword [esp + 0x24], edi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x1c], esi
mov ecx, dword [edi + 8]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x2c], esi
test ecx, ecx
jne 0x5c980f
xor eax, eax
jmp 0x5ca327
test ebx, ebx
jne 0x5c9848
push 0x65
pop edx
mov dword [esp + 0x14], edx
sub edx, 0x5f
je 0x5c9b2b
dec edx
dec edx
je 0x5c9b1a
sub edx, 4
jne 0x5ca1aa
mov ebx, dword [ebp + 8]
push ebx
push esi
push 0x3b
pop edx
call fcn.005b9192
pop ecx
pop ecx
jmp 0x5c9bcd
movzx edx, byte [ebx]
mov dword [esp + 0x14], edx
cmp edx, 0x77
jg 0x5c9b7b
je 0x5c9b53
cmp edx, 0x4a
jg 0x5c9a64
je 0x5c99f9
cmp edx, 0x3d
jg 0x5c99be
je 0x5c995c
sub edx, 0x13
je 0x5c9b2b
dec edx
je 0x5c9b6a
sub edx, 0x11
je 0x5c98fd
sub edx, 0x13
jne 0x5ca1aa
cmp dword [edi + 0x7c], esi
jne 0x5c98b1
push 0x4ab730
push edi
call fcn.005a4527
pop ecx
pop ecx
jmp 0x5c9808
cmp byte [ebx + 1], 2
jne 0x5c98c2
mov ecx, edi
call fcn.005d17a3
mov ecx, dword [esp + 0xc]
mov al, byte [ebx + 1]
push esi
cmp al, 4
jne 0x5c98e1
push dword [ebx + 8]
push esi
push 4
push esi
push 0x37
pop edx
call fcn.005b9258
add esp, 0x14
jmp 0x5ca310
push esi
push dword [ebx + 8]
movsx eax, al
mov edx, 0x713
push eax
mov ecx, edi
call fcn.005d17b0
add esp, 0x10
jmp 0x5ca310
mov esi, dword [ebp + 8]
mov ecx, edi
mov edx, dword [ebx + 0xc]
push esi
call fcn.005c97d4
mov dword [esp + 0x20], eax
pop ecx
cmp eax, esi
je 0x5c9928
mov ecx, dword [esp + 0xc]
push esi
push eax
push 0x41
pop edx
call fcn.005b9192
pop ecx
pop ecx
mov dword [esp + 0x1c], esi
mov ecx, dword [ebx + 8]
xor edx, edx
call fcn.005ce7b0
mov ecx, dword [esp + 0xc]
movsx eax, al
push eax
push esi
push 0x49
pop edx
call fcn.005b9192
mov edx, dword [esp + 0x24]
mov ecx, edi
push 1
call fcn.005c96ff
mov eax, dword [esp + 0x28]
add esp, 0xc
jmp 0x5ca327
mov eax, dword [ebx + 0x2c]
mov edx, 0x90
mov esi, dword [ebp + 8]
mov dword [esp + 0x30], eax
push esi
movsx ecx, word [eax + 0x2a]
movsx eax, word [ebx + 0x20]
inc ecx
imul ecx, dword [ebx + 0x1c]
inc eax
add eax, ecx
mov ecx, dword [esp + 0x10]
push eax
call fcn.005b9192
movzx eax, word [ebx + 0x20]
pop ecx
pop ecx
test ax, ax
js 0x5ca310
movsx ecx, ax
mov eax, dword [esp + 0x30]
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xd], 0x45
jne 0x5ca310
mov ecx, dword [esp + 0xc]
push esi
push 0x48
pop edx
call fcn.005b917e
jmp 0x5c9b4d
cmp edx, 0x46
jl 0x5ca1aa
cmp edx, 0x47
jle 0x5c9a8d
cmp edx, 0x48
je 0x5c9cc6
cmp edx, 0x49
jne 0x5ca1aa
push esi
push esi
mov esi, dword [ebp + 8]
mov edx, ebx
push esi
mov ecx, edi
call fcn.005ca6a4
add esp, 0xc
jmp 0x5c9c1f
call fcn.005b935e
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.005b935e
push dword [ebp + 8]
mov ecx, dword [esp + 0x10]
mov edi, eax
push 0
push 0x3b
pop edx
call fcn.005b9192
mov ecx, dword [esp + 0x2c]
mov edx, ebx
push edi
push esi
call fcn.005c8d9b
mov ebx, dword [ebp + 8]
mov ecx, dword [esp + 0x1c]
push ebx
push 1
push 0x38
pop edx
call fcn.005b9192
mov edx, esi
mov esi, dword [esp + 0x24]
mov ecx, esi
call fcn.005b93a0
push 0
push ebx
push 0x45
pop edx
call fcn.005b9192
add esp, 0x20
mov edx, edi
mov ecx, esi
call fcn.005b93a0
jmp 0x5c9bcd
cmp edx, 0x5e
jg 0x5c981a
je 0x5ca149
cmp edx, 0x4c
jle 0x5c9ac9
cmp edx, 0x52
jle 0x5c9cde
lea eax, [edx - 0x54]
cmp eax, 9
ja 0x5ca1aa
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x10]
push eax
mov ecx, edi
call fcn.005ca42e
mov edx, dword [ebx + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x2c]
mov ecx, edi
push eax
call fcn.005ca42e
mov edx, dword [esp + 0x18]
pop ecx
push dword [ebp + 8]
push esi
push eax
mov ecx, dword [esp + 0x18]
call fcn.005b910e
add esp, 0xc
jmp 0x5ca310
push dword [ebp + 8]
push 1
push 0x38
pop edx
call fcn.005b9192
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.005ca42e
mov ebx, dword [esp + 0x18]
add esp, 0xc
mov edx, dword [esp + 0x14]
mov ecx, ebx
push eax
call fcn.005b917e
pop ecx
push dword [ebp + 8]
mov ecx, ebx
mov esi, eax
push 0
push 0x38
pop edx
call fcn.005b9192
pop ecx
pop ecx
mov edx, esi
mov ecx, ebx
call fcn.005b9643
jmp 0x5ca310
push dword [ebx + 8]
mov edx, dword [ebp + 8]
call fcn.005b91b8
pop ecx
jmp 0x5ca324
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x10]
push eax
mov ecx, edi
call fcn.005ca42e
mov edx, dword [esp + 0x18]
pop ecx
push dword [ebp + 8]
mov ecx, dword [esp + 0x10]
push eax
call fcn.005b9192
pop ecx
pop ecx
jmp 0x5ca310
mov eax, dword [ebx + 0x14]
mov eax, dword [eax]
cmp dword [eax], 1
je 0x5c9b6a
mov edx, dword [eax]
mov ecx, edi
push 1
call fcn.005c8868
jmp 0x5c9b4d
push esi
push esi
mov edx, ebx
mov ecx, edi
call fcn.005c88aa
pop ecx
jmp 0x5c9e1b
lea eax, [edx - 0x84]
cmp eax, 0x1e
ja 0x5ca1aa
movzx eax, byte [eax + 0x44af70]
jmp dword [eax*4 + 0x44af30]
mov eax, ebx
jmp 0x5ca327
mov eax, esi
jmp 0x5ca327
xor eax, eax
mov esi, 0x80
cmp edx, 0x48
mov dword [esp + 0x1c], esi
sete al
lea edx, [eax + 0x4d]
mov dword [esp + 0x14], edx
mov eax, dword [ebx + 0xc]
mov ecx, eax
mov dword [esp + 0x18], eax
call fcn.005c6c26
mov ecx, edi
test eax, eax
je 0x5c9d03
push esi
push edx
push dword [ebp + 8]
mov edx, ebx
call fcn.005c6d43
jmp 0x5c9ac1
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x10]
push eax
call fcn.005ca42e
mov edx, dword [ebx + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x2c]
mov ecx, edi
push eax
call fcn.005ca42e
mov edx, dword [esp + 0x1c]
pop ecx
mov ecx, dword [esp + 0x1c]
or ecx, 0x20
push ecx
push dword [ebp + 8]
mov ecx, edi
push eax
push esi
push dword [esp + 0x24]
push dword [ebx + 0x10]
call fcn.005c6bc9
add esp, 0x18
jmp 0x5ca310
pop ecx
jmp 0x5ca327
push dword [ebp + 8]
mov ecx, edi
call fcn.005c97d4
jmp 0x5c9e1b
mov edx, dword [ebx + 0xc]
jmp 0x5c9f22
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x34], eax
mov dword [esp + 0x1c], esi
lea edx, [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
call fcn.005b935e
mov edx, dword [ebx + 0xc]
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], edx
test edx, edx
je 0x5ca233
push 0xc
mov esi, edx
lea edi, [esp + 0x3c]
pop ecx
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x10]
push eax
lea edx, [esp + 0x3c]
mov ecx, edi
call fcn.005c9749
pop ecx
mov edx, eax
lea ecx, [esp + 0x38]
call fcn.005c9736
push 0x30
xor ebx, ebx
lea eax, [esp + 0x6c]
push ebx
push eax
call fcn.005fab50
mov edx, dword [esp + 0x34]
lea eax, [esp + 0x44]
mov dword [esp + 0x80], eax
add esp, 0xc
lea eax, [esp + 0x68]
mov byte [esp + 0x68], 0x4e
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
mov ebx, dword [ebp + 8]
mov esi, dword [esp + 0xc]
lea ecx, [eax - 1]
test ecx, ecx
jle 0x5ca2d0
lea eax, [ecx - 1]
shr eax, 1
inc eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
mov ecx, edi
call fcn.005c949e
mov eax, dword [eax]
test edx, edx
je 0x5ca26a
mov dword [esp + 0x78], eax
jmp 0x5ca26e
mov dword [esp + 0x1c], eax
mov ecx, esi
call fcn.005b935e
push 0x10
mov esi, eax
push esi
push dword [esp + 0x24]
push edi
call fcn.005ca9f2
mov edx, dword [esp + 0x28]
mov ecx, edi
push ebx
mov edx, dword [edx + 0x18]
call fcn.005ca4a0
mov edx, dword [esp + 0x34]
add esp, 0x14
mov ecx, dword [esp + 0xc]
call fcn.005b91a7
mov ecx, edi
call fcn.005c94a2
mov edx, esi
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.005b93a0
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
add eax, 0x30
dec dword [esp + 0x30]
mov dword [esp + 0x18], eax
jne 0x5ca257
mov eax, dword [esp + 0x14]
test al, 1
je 0x5ca2f6
mov ecx, edi
call fcn.005c949e
imul edx, eax, 0x18
mov eax, dword [esp + 0x34]
push ebx
mov edx, dword [edx + eax - 0x10]
call fcn.005ca4a0
pop ecx
mov ecx, edi
call fcn.005c94a2
jmp 0x5ca305
push ebx
push 0
push 0x3b
pop edx
mov ecx, esi
call fcn.005b9192
pop ecx
pop ecx
mov edx, dword [esp + 0x20]
mov ecx, esi
call fcn.005b93a0
mov edx, dword [esp + 0x10]
mov ecx, edi
call fcn.005cb41a
mov edx, dword [esp + 0x2c]
call fcn.005cb41a
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret