Function at 0x5d00f2
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
mov esi, edx
mov ebx, ecx
push edi
mov dword [ebp - 0x10], esi
mov eax, dword [esi + 0xc]
mov ecx, dword [ebx]
mov dword [ebp - 8], eax
mov eax, dword [ebx + 0x28]
mov dword [ebp - 4], eax
add eax, 2
mov dword [ebx + 0x28], eax
mov edx, dword [esi + 0x18]
call fcn.005dbc8a
mov ecx, dword [ecx + 0x10]
mov edi, eax
mov edx, edi
mov dword [ebp - 0x14], edi
add edx, edx
push dword [ecx + edx*8]
mov ecx, ebx
push 0
push dword [esi]
push 0x1b
pop edx
call fcn.005cd74f
add esp, 0xc
test eax, eax
jne 0x5d037c
mov eax, dword [ebp - 8]
xor ecx, ecx
inc ecx
mov edx, edi
push dword [eax]
push ecx
push dword [eax + 0x1c]
mov ecx, ebx
call fcn.005cd7f8
add esp, 0xc
mov ecx, ebx
call fcn.005ddf3f
mov edi, eax
test edi, edi
je 0x5d037c
cmp dword [ebp + 8], 0
mov eax, dword [ebp + 8]
jge 0x5d017b
mov eax, dword [esi + 0x2c]
mov edx, esi
mov dword [ebp - 0x18], eax
mov ecx, ebx
call fcn.005d1b7b
mov edx, dword [ebx + 0x28]
push 0xfffffffffffffff7
mov dword [ebp - 0x20], eax
mov dword [ebp - 0xc], edx
lea ecx, [edx + 1]
mov dword [ebx + 0x28], ecx
mov ecx, eax
call fcn.005dd3a1
push eax
movzx eax, word [esi + 0x32]
mov ecx, edi
push eax
push 0
push edx
push 0x6d
pop edx
call fcn.005b9258
mov eax, dword [ebp - 8]
add esp, 0x14
mov esi, dword [ebp - 4]
mov ecx, ebx
mov edx, esi
push 0x68
push eax
push dword [ebp - 0x14]
call fcn.005d61b5
add esp, 0xc
mov ecx, edi
push 0
push esi
push 0x25
pop edx
call fcn.005b9192
mov ecx, ebx
mov esi, eax
call fcn.005cb3fb
xor edx, edx
mov dword [ebp - 8], eax
push edx
push edx
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, dword [ebp - 4]
push edx
mov edx, dword [ebp - 0x10]
push eax
push ecx
mov ecx, ebx
call fcn.005d2f52
push dword [ebp - 8]
mov ecx, edi
push dword [ebp - 0xc]
push 0x7d
pop edx
call fcn.005b9192
mov edx, dword [ebp - 0x1c]
mov ecx, ebx
call fcn.005d307b
lea eax, [esi + 1]
mov ecx, edi
push eax
push dword [ebp - 4]
push 7
pop edx
call fcn.005b9192
add esp, 0x30
mov edx, esi
mov ecx, edi
call fcn.005b9643
mov esi, dword [ebp + 8]
test esi, esi
jns 0x5d0250
push dword [ebp - 0x14]
mov edx, 0x83
mov ecx, edi
push dword [ebp - 0x18]
call fcn.005b9192
pop ecx
pop ecx
mov eax, dword [ebp - 4]
mov ecx, edi
push 0xfffffffffffffff7
push dword [ebp - 0x20]
inc eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push eax
push 0x69
pop edx
call fcn.005b9258
add esp, 0x14
xor edx, edx
test esi, esi
mov ecx, edi
push 0x10
pop eax
cmovns edx, eax
xor eax, eax
inc eax
or dx, ax
call fcn.005b962b
push 0
push dword [ebp - 0xc]
push 0x23
pop edx
call fcn.005b9192
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov ecx, edi
cmp byte [eax + 0x36], 0
je 0x5d02e5
call fcn.005b950e
lea esi, [eax + 3]
mov edx, esi
call fcn.005b91a7
mov ecx, edi
call fcn.005b950e
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + 0x32]
push ecx
push dword [ebp - 8]
mov ecx, edi
push esi
push dword [ebp - 0xc]
push 0x78
pop edx
call fcn.005b930f
push dword [ebp - 0x10]
mov ecx, ebx
push 2
pop edx
call fcn.005d17ff
add esp, 0x14
jmp 0x5d02ed
call fcn.005b950e
mov dword [ebp - 0x18], eax
mov esi, dword [ebp - 4]
mov ecx, edi
inc esi
push esi
push dword [ebp - 8]
push dword [ebp - 0xc]
push 0x79
pop edx
call fcn.005b910e
add esp, 0xc
mov ecx, edi
push 0xffffffffffffffff
push 0
push esi
push 0x21
pop edx
call fcn.005b910e
add esp, 0xc
mov ecx, edi
push dword [ebp - 8]
push esi
push 0x7e
pop edx
call fcn.005b9192
push 0x10
pop edx
mov ecx, edi
call fcn.005b962b
mov edx, dword [ebp - 8]
mov ecx, ebx
call fcn.005cb41a
push dword [ebp - 0x18]
mov ebx, dword [ebp - 0xc]
mov ecx, edi
push ebx
push 3
pop edx
call fcn.005b9192
mov edx, dword [ebp - 0x20]
mov ecx, edi
call fcn.005b9643
push dword [ebp - 4]
mov ecx, edi
push 0x70
pop edx
call fcn.005b917e
add esp, 0x14
mov ecx, edi
push esi
push 0x70
pop edx
call fcn.005b917e
pop ecx
push ebx
push 0x70
pop edx
mov ecx, edi
call fcn.005b917e
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret