Function at 0x10058220
Capabilities:
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x1c
mov ebp, dword [0x1025afd0]
cmp byte [ebp], 0
je 0x10058546
mov edi, dword [esp + 0x30]
mov eax, dword [ebp + 0x199c]
cmp eax, dword [ebp + 0x1998]
je 0x10058254
call fcn.10057530
mov eax, dword [ebp + 0x1998]
mov dword [ebp + 0x19a0], eax
mov dword [ebp + 0x364], 0
mov dword [ebp + 0x360], 0
mov dword [ebp + 0x35c], 0
lea esi, [ebp + 0x1c2c]
mov ecx, esi
call fcn.10058560
test edi, edi
je 0x10058298
cmp dword [edi + 0x18], 0
je 0x10058298
mov ecx, esi
mov edx, edi
call fcn.10058660
mov eax, dword [ebp + 0x1b34]
test eax, eax
mov dword [esp + 0x18], esi
je 0x100582c0
xor ebx, ebx
test byte [eax + 9], 0x20
jne 0x100582b4
mov ebx, dword [eax + 0x2f0]
mov eax, dword [ebp + 0x1b3c]
mov dword [esp + 0x14], eax
jmp 0x100582ca
xor ebx, ebx
mov dword [esp + 0x14], 0
mov eax, dword [ebp + 0x19a4]
test eax, eax
je 0x1005833e
xor esi, esi
jmp 0x100582f5
add ecx, dword [0x1025afd0]
call fcn.1005e7f0
mov eax, dword [ebp + 0x19a4]
nop dword [eax]
inc esi
cmp esi, eax
je 0x1005833e
cmp eax, esi
jle 0x10058546
mov ecx, dword [ebp + 0x19ac]
mov edx, dword [ecx + esi*4]
cmp byte [edx + 0x7a], 0
je 0x100582f0
cmp byte [edx + 0x81], 0
jne 0x100582f0
mov edi, dword [edx + 8]
test edi, 0x1000000
jne 0x100582f0
cmp edx, ebx
je 0x100582f0
cmp edx, dword [esp + 0x14]
je 0x100582f0
mov ecx, 0x1c2c
test edi, 0x2000000
je 0x100582d8
mov ecx, 0x1c38
jmp 0x100582d8
test ebx, ebx
je 0x10058372
cmp byte [ebx + 0x7a], 0
je 0x10058372
cmp byte [ebx + 0x81], 0
jne 0x10058372
test dword [ebx + 8], 0x2000000
mov eax, 0x1c2c
mov ecx, 0x1c38
cmove ecx, eax
add ecx, dword [0x1025afd0]
mov edx, ebx
call fcn.1005e7f0
mov edx, dword [esp + 0x14]
test edx, edx
mov esi, dword [esp + 0x18]
je 0x100583ac
cmp byte [edx + 0x7a], 0
je 0x100583ac
cmp byte [edx + 0x81], 0
jne 0x100583ac
test dword [edx + 8], 0x2000000
mov eax, 0x1c2c
mov ecx, 0x1c38
cmove ecx, eax
add ecx, dword [0x1025afd0]
call fcn.1005e7f0
mov ecx, esi
call fcn.10057360
cmp byte [ebp + 0xac], 0
je 0x100583fe
mov eax, dword [ebp + 0x1cbc]
movss xmm0, dword [ebp + 0x15a0]
movss xmm1, dword [ebp + 0xe0]
movss xmm2, dword [ebp + 0xe4]
lea ecx, [ebp + 0x1c48]
mov dword [esp + 0x10], eax
movss dword [esp + 0xc], xmm0
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm1
mov dword [esp], ecx
call fcn.1006b400
cmp dword [ebp + 0x1c60], 0
je 0x10058414
lea edx, [ebp + 0x1c48]
mov ecx, esi
call fcn.10058660
mov ecx, dword [0x1025afd0]
test ecx, ecx
je 0x10058546
lea eax, [ebp + 0x1c00]
mov byte [eax], 1
mov edi, dword [esi]
test edi, edi
jle 0x10058439
mov edx, dword [ebp + 0x1c34]
jmp 0x1005843b
xor edx, edx
mov dword [ebp + 0x1c04], edx
mov dword [ebp + 0x1c08], edi
xorps xmm0, xmm0
movups xmmword [ebp + 0x1c0c], xmm0
movsd xmm0, qword [ecx + 0x10]
movsd qword [ebp + 0x1c1c], xmm0
movsd xmm0, qword [ecx + 0xa4]
movsd qword [ebp + 0x1c24], xmm0
test edi, edi
jle 0x1005848d
mov dword [esp + 0x18], eax
mov esi, dword [ebp + 0x1c34]
cmp edi, 1
mov dword [esp + 0x14], edi
jne 0x100584a6
xor edx, edx
xor edi, edi
xor ebx, ebx
jmp 0x100584f9
mov dword [ebp + 0x35c], 0
mov dword [ebp + 0x360], 0
jmp 0x1005853e
mov ecx, edi
and ecx, 0xfffffffe
xor edx, edx
xor edi, edi
xor ebx, ebx
nop word cs:[eax + eax]
mov eax, dword [esi + ebx*4]
add edi, dword [eax + 0x18]
mov dword [ebp + 0x1c10], edi
mov eax, dword [esi + ebx*4]
add edx, dword [eax + 0xc]
mov dword [ebp + 0x1c0c], edx
mov eax, dword [esi + ebx*4 + 4]
add edi, dword [eax + 0x18]
mov dword [ebp + 0x1c10], edi
mov eax, dword [esi + ebx*4 + 4]
add edx, dword [eax + 0xc]
mov dword [ebp + 0x1c0c], edx
add ebx, 2
cmp ecx, ebx
jne 0x100584c0
test byte [esp + 0x14], 1
je 0x10058518
mov eax, dword [esi + ebx*4]
add edi, dword [eax + 0x18]
mov dword [ebp + 0x1c10], edi
mov eax, dword [esi + ebx*4]
add edx, dword [eax + 0xc]
mov dword [ebp + 0x1c0c], edx
mov dword [ebp + 0x35c], edi
mov dword [ebp + 0x360], edx
cmp dword [esp + 0x14], 0
jle 0x1005853e
mov eax, dword [ebp + 0xdc]
test eax, eax
je 0x1005853e
mov ecx, dword [esp + 0x18]
mov dword [esp], ecx
call eax
add esp, 0x1c
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp], 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3