Function at 0x88225f
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
mov ebx, ecx
push esi
mov esi, edx
push edi
mov ecx, dword [ebx + 0x28]
mov dword [ebp - 0x10], ecx
mov eax, dword [esi + 0xc]
mov dword [ebp - 4], eax
lea eax, [ecx + 1]
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x1c], eax
lea eax, [ecx + 2]
mov ecx, dword [ebx]
mov dword [ebx + 0x28], eax
mov edx, dword [esi + 0x18]
call fcn.0088e18e
mov ecx, dword [ecx + 0x10]
mov edi, eax
mov edx, edi
mov dword [ebp - 0x18], edi
add edx, edx
push dword [ecx + edx*8]
mov ecx, ebx
push 0
push dword [esi]
push 0x1b
pop edx
call fcn.0087f84e
add esp, 0xc
test eax, eax
jne 0x8824ee
mov eax, dword [ebp - 4]
mov edx, edi
mov ecx, ebx
push dword [eax]
push 1
push dword [eax + 0x1c]
call fcn.0087f8f7
add esp, 0xc
mov ecx, ebx
call fcn.008903a5
mov edi, eax
test edi, edi
je 0x8824ee
cmp dword [ebp + 8], 0
mov eax, dword [ebp + 8]
jge 0x8822ec
mov eax, dword [esi + 0x2c]
mov edx, esi
mov dword [ebp - 0x14], eax
mov ecx, ebx
call fcn.00883ce3
mov edx, dword [ebx + 0x28]
push 0xfffffffffffffff7
mov dword [ebp - 0x24], eax
mov dword [ebp - 8], edx
lea ecx, [edx + 1]
mov dword [ebx + 0x28], ecx
mov ecx, eax
call fcn.0088f933
push eax
movzx eax, word [esi + 0x32]
mov ecx, edi
push eax
push 0
push edx
push 0x6f
pop edx
call fcn.0086b23d
mov eax, dword [ebp - 4]
add esp, 0x14
mov esi, dword [ebp - 0x10]
mov ecx, ebx
mov edx, esi
push 0x6a
push eax
push dword [ebp - 0x18]
call fcn.0088842c
add esp, 0xc
mov ecx, edi
push 0
push esi
push 0x25
pop edx
call fcn.0086b177
mov ecx, ebx
mov esi, eax
call fcn.0087d503
mov edx, eax
mov dword [ebp - 4], edx
call fcn.008838f8
xor ecx, ecx
lea eax, [ebp - 0x20]
push ecx
push ecx
push eax
push ecx
push edx
push dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0088512f
push dword [ebp - 4]
mov edx, 0x80
mov ecx, edi
push dword [ebp - 8]
call fcn.0086b177
mov edx, dword [ebp - 0x20]
mov ecx, ebx
call fcn.00885264
lea eax, [esi + 1]
mov ecx, edi
push eax
push dword [ebp - 0x10]
push 7
pop edx
call fcn.0086b177
add esp, 0x30
mov edx, esi
mov ecx, edi
call fcn.0086b698
cmp dword [ebp + 8], 0
mov esi, dword [ebp - 0x14]
jge 0x8823c9
push dword [ebp - 0x18]
mov edx, 0x87
mov ecx, edi
push esi
call fcn.0086b177
pop ecx
pop ecx
push 0xfffffffffffffff7
push dword [ebp - 0x24]
mov ecx, edi
push dword [ebp - 0x18]
push esi
mov esi, dword [ebp - 0x1c]
push esi
push 0x6b
pop edx
call fcn.0086b23d
add esp, 0x14
xor edx, edx
inc edx
mov ecx, edi
cmp dword [ebp + 8], 0
push 0x11
pop eax
cmovge edx, eax
call fcn.0086b680
push 0
push dword [ebp - 8]
push 0x23
pop edx
call fcn.0086b177
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xc]
pop ecx
pop ecx
mov ecx, edi
cmp byte [eax + 0x36], 0
je 0x88245f
xor edx, edx
inc edx
call fcn.0086b18c
mov ecx, edi
mov esi, eax
call fcn.0086b561
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
movzx ecx, word [eax + 0x32]
push ecx
push dword [ebp - 4]
mov ecx, edi
push esi
push dword [ebp - 8]
push 0x7a
pop edx
call fcn.0086b36e
push dword [ebp - 0xc]
mov ecx, ebx
push 2
pop edx
call fcn.0088395d
add esp, 0x14
mov edx, esi
mov ecx, edi
call fcn.0086b698
mov esi, dword [ebp - 0x1c]
jmp 0x882467
call fcn.0086b561
mov dword [ebp - 0x18], eax
push esi
push dword [ebp - 4]
mov ecx, edi
push dword [ebp - 8]
push 0x7b
pop edx
call fcn.0086b0f3
add esp, 0xc
mov ecx, edi
push esi
push 0x7f
pop edx
call fcn.0086b163
pop ecx
push dword [ebp - 4]
mov edx, 0x81
mov ecx, edi
push esi
call fcn.0086b177
push 0x10
pop edx
mov ecx, edi
call fcn.0086b680
mov edx, dword [ebp - 4]
mov ecx, ebx
call fcn.0087d522
push dword [ebp - 0x18]
mov ebx, dword [ebp - 8]
mov ecx, edi
push ebx
push 3
pop edx
call fcn.0086b177
mov edx, dword [ebp - 0x24]
mov ecx, edi
call fcn.0086b698
push dword [ebp - 0x10]
mov ecx, edi
push 0x72
pop edx
call fcn.0086b163
add esp, 0x14
mov ecx, edi
push esi
push 0x72
pop edx
call fcn.0086b163
pop ecx
push ebx
push 0x72
pop edx
mov ecx, edi
call fcn.0086b163
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret