Function at 0x550230
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x70
push ebx
push ebp
push esi
push edi
mov esi, ecx
call fcn.005505d0
mov ecx, 0x1a
xor eax, eax
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edi
mov ebp, dword [esp + 0x14]
mov al, byte [esi + 1]
test al, al
jne 0x5502af
test ebx, ebx
jne 0x55026d
xor ebp, ebp
jmp 0x550325
cmp ebx, 1
jne 0x55027c
mov ebp, 4
jmp 0x550325
cmp ebx, 2
jne 0x55028b
mov ebp, 1
jmp 0x550325
cmp ebx, 3
je 0x550320
cmp ebx, 4
jne 0x5502a3
mov ebp, 2
jmp 0x550325
cmp ebx, 5
jne 0x550325
mov ebp, 3
jmp 0x550325
cmp al, 1
jne 0x5502ef
test ebx, ebx
jne 0x5502bb
xor ebp, ebp
jmp 0x550325
cmp ebx, 1
jne 0x5502c4
mov ebp, ebx
jmp 0x550325
cmp ebx, 2
jne 0x5502d0
mov ebp, 4
jmp 0x550325
cmp ebx, 3
jne 0x5502dc
mov ebp, 2
jmp 0x550325
cmp ebx, 4
jne 0x5502e8
mov ebp, 3
jmp 0x550325
cmp ebx, 5
jne 0x550325
jmp 0x550320
test ebx, ebx
jne 0x5502f7
xor ebp, ebp
jmp 0x550325
cmp ebx, 1
jne 0x550300
mov ebp, ebx
jmp 0x550325
cmp ebx, 2
jne 0x550309
mov ebp, ebx
jmp 0x550325
cmp ebx, 3
jne 0x550312
mov ebp, ebx
jmp 0x550325
cmp ebx, 4
jne 0x55031b
mov ebp, ebx
jmp 0x550325
cmp ebx, 5
jne 0x550325
mov ebp, 5
cmp byte [esi + ebx + 0xb918], 1
jne 0x5505b9
cmp byte [edi + esi + 0xb95a], 0x2f
jae 0x5505b4
push ebp
mov ecx, esi
call fcn.00550160
xor eax, eax
mov dl, byte [0x64599f]
mov bl, byte [0x64599e]
xor ecx, ecx
cmp dl, al
setne cl
xor edx, edx
cmp bl, al
mov bl, byte [0x64599d]
setne dl
and ecx, edx
xor edx, edx
cmp bl, al
mov bl, byte [0x64599c]
setne dl
and ecx, edx
xor edx, edx
cmp bl, al
mov bl, byte [0x64599b]
setne dl
and ecx, edx
xor edx, edx
cmp bl, al
mov bl, byte [0x64599a]
setne dl
and ecx, edx
xor edx, edx
cmp bl, al
setne dl
test edx, ecx
jne 0x5503b1
inc eax
cmp eax, 6
jl 0x55034b
mov ebx, dword [esp + 0x14]
jmp 0x5503bb
mov ebx, dword [esp + 0x14]
mov byte [ebx + 0x64599a], al
mov byte [ebx + 0x6459a0], 0x40
mov dl, byte [edi + esi + 0xb95a]
mov ecx, edx
xor edi, edi
and ecx, 0xff
push edx
mov byte [esp + 0x1c], bl
mov byte [esp + 0x1d], 5
lea eax, [ecx + ecx*2]
mov byte [esp + 0x1e], 0
mov dword [esp + 0x48], edi
mov dword [esp + 0x60], str.FpuTemp.fpu
lea eax, [eax + eax*8]
shl eax, 4
sub eax, ecx
shl eax, 1
lea ecx, [eax + 0x623a32]
mov dword [esp + 0x38], ecx
lea ecx, [eax + 0x623aac]
mov dword [esp + 0x3c], ecx
lea ecx, [eax + 0x623ade]
mov dword [esp + 0x4c], ecx
lea ecx, [eax + 0x623b10]
mov dword [esp + 0x50], ecx
lea ecx, [eax + 0x623b42]
mov dword [esp + 0x54], ecx
lea ecx, [eax + 0x623b74]
mov dword [esp + 0x58], ecx
lea ecx, [eax + 0x623ba6]
mov dword [esp + 0x5c], ecx
lea ecx, [eax + 0x623bd8]
mov dword [esp + 0x40], ecx
lea eax, [eax + 0x623c0a]
mov ecx, esi
mov dword [esp + 0x44], eax
call fcn.00551110
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], edi
fstp dword [esp + 0x1c]
mov dl, byte [ecx + esi + 0xb95a]
mov eax, dword [esi + ebp*4 + 0xb87c]
push edx
push eax
mov ecx, esi
call fcn.00547b90
mov ecx, dword [esi + ebp*4 + 0xb87c]
push edi
mov dword [esp + 0x70], ecx
mov edx, dword [esi + ebp*4 + 0xb8ac]
push 0x18
mov dword [esp + 0x80], edx
call fcn.00401000
mov edi, eax
mov ecx, 6
xor eax, eax
mov dword [esi + ebp*4 + 0xb894], edi
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x18]
mov eax, dword [esi + ebp*4 + 0xb894]
add esp, 8
mov cl, byte [edi + esi + 0xb95e]
mov byte [eax], cl
mov al, byte [edi + esi + 0xb962]
test al, al
jne 0x5504e1
mov edx, dword [esi + ebp*4 + 0xb894]
mov byte [edx + 1], 1
jmp 0x55051d
cmp al, 1
jne 0x5504f2
mov eax, dword [esi + ebp*4 + 0xb894]
mov byte [eax + 1], 0
jmp 0x55051d
call fcn.00576af5
and eax, 0x80000001
jns 0x550503
dec eax
or eax, 0xfffffffe
inc eax
jne 0x550512
mov ecx, dword [esi + ebp*4 + 0xb894]
mov byte [ecx + 1], 1
jmp 0x55051d
mov edx, dword [esi + ebp*4 + 0xb894]
mov byte [edx + 1], 0
call fcn.00576af5
cdq
mov ecx, 0x41
idiv ecx
mov eax, dword [esi + 0xb968]
mov ecx, dword [esi + ebp*4 + 0xb894]
mov eax, dword [eax + edx*4]
mov dword [ecx + 4], eax
mov ecx, dword [esi + 0xb968]
mov eax, dword [esi + ebp*4 + 0xb894]
mov ecx, dword [ecx + edx*4 + 0x104]
mov dword [eax + 8], ecx
mov eax, dword [esi + 0xb968]
mov ecx, dword [esi + ebp*4 + 0xb894]
mov edx, dword [eax + edx*4 + 0x208]
mov dword [ecx + 0xc], edx
mov cl, byte [edi + esi + 0xb95a]
mov eax, dword [esi + ebp*4 + 0xb894]
push ecx
push ebx
mov ecx, esi
mov dword [esp + 0x78], eax
call fcn.005509d0
mov edx, dword [esi + ebx*4 + 0xb8f4]
lea ecx, [esp + 0x18]
mov dword [esp + 0x64], edx
mov eax, dword [esi + ebp*4 + 0xb8c4]
mov dword [0x650d60], ecx
mov ecx, 0x64f558
mov dword [esp + 0x74], eax
call fcn.00431f00
mov edi, dword [esp + 0x10]
inc edi
mov dword [esp + 0x10], edi
inc ebx
cmp ebx, 6
mov dword [esp + 0x14], ebx
jl 0x55025b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret