Function at 0x45c3ba
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
mov eax, esi
call fcn.00456260
mov dword [ebp - 0x20], eax
mov eax, esi
call fcn.00456260
mov edi, dword [ebp + 8]
and dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 0x18]
mov eax, dword [ebp + 0x18]
movzx edx, byte [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 8], eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x14], eax
mov eax, edi
mov dword [ebp - 0x10], edx
call fcn.004509cb
mov dword [ebp - 0xc], eax
cmp edx, 5
je 0x45c41c
cmp edx, 0xa
je 0x45c41c
mov eax, edi
call fcn.004509cb
mov dword [ebp - 4], eax
jmp 0x45c440
push dword [ebp + 0x14]
mov eax, dword [edi + 0x44]
push dword [ebp - 0xc]
lea ecx, [eax + 1]
push eax
mov dword [ebp - 0x18], eax
mov dword [edi + 0x44], ecx
push 0x2a
pop eax
mov ecx, esi
call fcn.004561b8
add esp, 0xc
and dword [ebp - 4], 0
push dword [ebp - 0x20]
mov ecx, esi
push dword [ebp - 0x14]
push 0x40
pop eax
call fcn.0045624d
push dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 0xc]
mov edi, esi
call fcn.00459023
mov eax, dword [ebx]
mov edi, dword [ebp - 0xc]
push edi
inc eax
push eax
push dword [ebp - 0x14]
mov ecx, esi
push 0x1c
pop eax
call fcn.004561b8
mov eax, dword [ebp - 0x10]
add esp, 0x18
cmp eax, 6
je 0x45c573
cmp eax, 7
je 0x45c535
jle 0x45c4c7
cmp eax, 9
jg 0x45c4c7
push dword [ebp - 4]
mov ecx, esi
push dword [ebp - 8]
push 0x36
pop eax
call fcn.0045624d
push dword [ebp - 4]
mov ecx, esi
push edi
push dword [ebp - 8]
push 0x37
pop eax
call fcn.004561b8
add esp, 0x14
mov dl, 8
mov ecx, esi
call fcn.0044f9e9
jmp 0x45c582
xor ebx, ebx
cmp dword [ebp + 0x14], ebx
jle 0x45c4fd
mov edi, dword [ebp + 0x18]
mov eax, dword [edi + 8]
add eax, ebx
push eax
push ebx
push dword [ebp - 0x18]
mov ecx, esi
push 0x1c
pop eax
call fcn.004561b8
add esp, 0xc
test ebx, ebx
jne 0x45c4f5
mov dl, 0x20
mov ecx, esi
call fcn.0044f9e9
inc ebx
cmp ebx, dword [ebp + 0x14]
jl 0x45c4ce
jmp 0x45c500
mov edi, dword [ebp + 0x18]
cmp dword [ebp - 0x10], 5
mov ecx, esi
jne 0x45c528
push dword [ebp + 0x14]
push dword [edi + 8]
push 0x10
pop eax
call fcn.0045624d
mov esi, dword [edi + 8]
mov eax, dword [ebp + 8]
pop ecx
pop ecx
mov ecx, dword [ebp + 0x14]
call fcn.00450964
jmp 0x45c56e
push dword [edi + 4]
push 4
pop eax
call fcn.0045623c
jmp 0x45c581
mov eax, dword [ebp + 0xc]
push 1
add eax, 5
push eax
push dword [ebp - 4]
push 1
push edi
push esi
push 0x1e
pop eax
call fcn.0045aa2d
mov eax, dword [ebp + 8]
xor ecx, ecx
inc ecx
mov esi, edi
call fcn.00450964
push dword [ebp - 4]
mov ecx, dword [ebp + 0x10]
push dword [ebp - 8]
push 0x46
pop eax
call fcn.0045624d
add esp, 0x20
mov esi, dword [ebp + 0x10]
jmp 0x45c582
push dword [ebp - 8]
mov eax, dword [ebp + 8]
xor ebx, ebx
inc ebx
call fcn.004575c7
pop ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
call fcn.004509e6
mov edx, dword [ebp - 4]
call fcn.004509e6
mov edx, dword [ebp - 0x1c]
mov ecx, esi
call fcn.0044f8ce
push dword [ebp - 0x24]
mov ecx, esi
push dword [ebp - 0x14]
push 0x43
pop eax
call fcn.0045624d
mov edx, dword [ebp - 0x20]
pop ecx
pop ecx
mov ecx, esi
call fcn.0044f8ce
cmp dword [ebp - 0x10], 5
je 0x45c5c7
cmp dword [ebp - 0x10], 0xa
jne 0x45c5d8
push 0
push dword [ebp - 0x18]
mov ecx, esi
push 0x2b
pop eax
call fcn.0045624d
pop ecx
pop ecx
pop edi
pop esi
pop ebx
leave
ret