Function at 0x5f2c10
Capabilities:
Terminate process

Disassembly:
push ecx
mov edx, dword [0x7452b4]
test edx, edx
je 0x5f2fa0
mov ecx, dword [0x76cdc8]
mov eax, dword [0x76cdc4]
push ebx
push ebp
push esi
mov esi, dword [0x76d56c]
push edi
mov edi, 0x18
mov ebp, 1
mov ebx, 0x14
cmp dword [0x7452bc], 0
je 0x5f2f9c
cmp esi, ebp
mov dword [0x7451f8], edi
mov dword [0x7451fc], 0x10
mov dword [0x745204], ebp
mov dword [0x745274], edi
mov dword [0x745278], 0x10
mov dword [0x745280], ebp
jne 0x5f2c91
mov dword [0x745200], ebx
mov dword [0x74527c], edi
jmp case.default.0x5f2d25
cmp esi, 2
jne 0x5f2ca7
mov dword [0x745200], ebx
mov dword [0x74527c], edi
jmp case.default.0x5f2d25
cmp esi, 3
jne 0x5f2cc1
mov dword [0x745200], ebx
mov dword [0x74527c], 8
jmp case.default.0x5f2d25
cmp esi, 4
jne 0x5f2ce1
mov al, byte [0x76ade0]
neg al
mov dword [0x745200], ebx
sbb eax, eax
and eax, 0xfffffff0
add eax, edi
mov dword [0x74527c], eax
jmp case.default.0x5f2d25
cmp esi, 5
jne 0x5f2f9c
dec eax
cmp eax, 3
ja case.default.0x5f2cf0
jmp dword [eax*4 + 0x5f2ff4]
mov dword [0x745200], 8
jmp case.default.0x5f2cf0
mov dword [0x745200], ebx
jmp case.default.0x5f2cf0
mov dword [0x745200], edi
jmp case.default.0x5f2cf0
mov dword [0x745200], 0x1c
lea eax, [ecx - 1]
cmp eax, 3
ja case.default.0x5f2d25
jmp dword [eax*4 + 0x5f3004]
mov dword [0x74527c], 8
jmp case.default.0x5f2d25
mov dword [0x74527c], ebx
jmp case.default.0x5f2d25
mov dword [0x74527c], 0x1c
mov ecx, dword [edx]
push 0x7451f8
push 4
push edx
call dword [ecx + 0x14]
mov esi, eax
cmp esi, 0x80070002
jne 0x5f2d98
mov esi, dword [0x76d56c]
cmp esi, 5
jne 0x5f2db7
mov eax, dword [0x76cdc4]
mov ecx, dword [0x76cdc8]
inc eax
mov dword [0x76cdc4], eax
mov edx, 2
cmp eax, ecx
jne 0x5f2d87
inc eax
cmp eax, 4
jle 0x5f2d8e
mov eax, ebp
dec edx
jne 0x5f2d82
mov dword [0x76cdc4], eax
jmp 0x5f2e0a
test esi, esi
je 0x5f2db7
push 0x257
push 0x699f98
push esi
call fcn.005f27e0
add esp, 0xc
test esi, esi
jl 0x5f2fee
mov eax, dword [0x7452b4]
mov edx, dword [eax]
push 0x745274
push 4
push eax
call dword [edx + 0x14]
mov esi, eax
cmp esi, 0x80070002
jne 0x5f2e1e
mov esi, dword [0x76d56c]
cmp esi, 5
jne 0x5f2e3f
mov ecx, dword [0x76cdc8]
mov eax, dword [0x76cdc4]
inc ecx
mov dword [0x76cdc8], ecx
mov edx, 2
cmp ecx, eax
jne 0x5f2dfa
inc ecx
cmp ecx, 4
jle 0x5f2e01
mov ecx, ebp
dec edx
jne 0x5f2df5
mov dword [0x76cdc8], ecx
mov edx, dword [0x7452b4]
test edx, edx
jne 0x5f2c43
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
test esi, esi
je 0x5f2e3f
push 0x270
push 0x699f98
push esi
call fcn.005f27e0
add esp, 0xc
test esi, esi
jge 0x5f2e3f
push esi
call fcn.006731ab
mov ecx, dword [0x745208]
mov eax, dword [0x74520c]
sub eax, ecx
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, dword [0x745284]
fld dword [0x68b7d0]
mov ecx, dword [0x745288]
sub ecx, eax
fdiv st(1)
mov dword [esp + 0x10], ecx
fstp dword [0x7452a8]
fild dword [esp + 0x10]
fstp dword [esp + 0x10]
fld dword [0x68b7d0]
fdiv dword [esp + 0x10]
fstp dword [0x7450f4]
fmul dword [0x68b504]
call fcn.00602090
fld dword [esp + 0x10]
fmul dword [0x68b504]
mov dword [0x7450ec], eax
call fcn.00602090
mov edx, dword [0x745200]
mov dword [0x7450f0], eax
mov eax, 0x10
mov dword [0x745244], eax
mov dword [0x74522c], eax
mov eax, dword [0x74527c]
push 0x745240
mov dword [0x745230], eax
mov eax, dword [0x7452b4]
push 5
mov dword [0x745240], ebx
mov dword [0x745248], edx
mov dword [0x74524c], ebp
mov dword [0x745228], ebx
mov dword [0x745234], ebp
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov esi, eax
cmp esi, 0x80070002
jne 0x5f2fa2
mov dword [0x745250], 0
mov eax, dword [0x7452b4]
mov edx, dword [eax]
push 0x745228
push 5
push eax
call dword [edx + 0x14]
mov esi, eax
cmp esi, 0x80070002
jne 0x5f2fcb
mov dword [0x745238], 0
mov eax, dword [0x745250]
test eax, eax
jne 0x5f2f6e
mov ecx, dword [0x745208]
mov eax, dword [0x74520c]
sub eax, ecx
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x699f90]
call fcn.00602090
mov dword [0x745250], eax
mov eax, dword [0x745238]
test eax, eax
jne 0x5f2f9c
mov eax, dword [0x745284]
mov ecx, dword [0x745288]
sub ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x699f90]
call fcn.00602090
mov dword [0x745238], eax
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
test esi, esi
je 0x5f2f16
push 0x289
push 0x699f98
push esi
call fcn.005f27e0
add esp, 0xc
test esi, esi
jge 0x5f2f16
push esi
call fcn.006731ab
test esi, esi
je 0x5f2f40
push 0x291
push 0x699f98
push esi
call fcn.005f27e0
add esp, 0xc
test esi, esi
jge 0x5f2f40
push esi
call fcn.006731ab
imul dword [edi + ebx*2]
add byte [ebx], al
sub eax, 0x2d0b005f
pop edi
add byte [ebx], dl
sub eax, 0x2d2c005f
pop edi
add byte [eax], bh
sub eax, 0x2c9c005f
pop edi
add byte [eax + 0x2d], al
pop edi
add ah, cl
int3