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

Disassembly:
sub esp, 0x13c
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x1dac0]
test eax, eax
je 0x55c02c
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 4
push 1
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 4
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 1
push 1
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 4
push 1
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 2
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 3
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 6
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0xe
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0x89
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 9
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0x142
push eax
call dword [edx + 0x164]
mov eax, dword [ebx + 0x1dabc]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebx + 0x1dac4], ecx
je 0x55bfca
push ebp
push esi
push edi
lea esp, [esp]
mov eax, dword [ebx + 0xd8]
xor ebp, ebp
cmp eax, ebp
mov eax, dword [ebx + 0x1dac4]
lea ecx, [eax + 8]
je 0x55b7bf
mov eax, dword [ecx]
fld dword [eax + 0x5c]
fadd dword [eax + 0x68]
fstp dword [esp + 0x20]
fld dword [eax + 0x60]
fadd dword [eax + 0x6c]
fstp dword [esp + 0x24]
mov edx, dword [esp + 0x24]
fld dword [eax + 0x64]
fadd dword [eax + 0x70]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
fstp dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
jmp 0x55b7d8
mov edx, dword [ecx]
add edx, 0x5c
mov eax, dword [edx]
mov dword [esp + 0x14], eax
mov eax, dword [edx + 4]
mov dword [esp + 0x18], eax
mov edx, dword [edx + 8]
mov dword [esp + 0x1c], edx
mov eax, dword [ecx]
fld dword [eax + 0x10]
mov ecx, dword [ebx + 0x1dac4]
fmul dword [0x6bc860]
mov dword [esp + 0x34], 0
fld st(0)
fchs
fst dword [esp + 0x2c]
fld st(1)
fstp dword [esp + 0x30]
mov esi, dword [ecx + 8]
fld dword [esi + 0x24]
add esi, 0x24
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b81f
mov dword [esp + 0x10], 0xff
jmp 0x55b84b
fld dword [esi]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55b834
mov dword [esp + 0x10], ebp
jmp 0x55b84b
fld dword [esi]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov dword [esp + 0x10], eax
fld dword [esi + 4]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b862
mov ebp, 0xff
jmp 0x55b888
fld dword [esi + 4]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jnp 0x55b888
fld dword [esi + 4]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov ebp, eax
fld dword [esi + 8]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b89f
mov edi, 0xff
jmp 0x55b8c9
fld dword [esi + 8]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55b8b3
xor edi, edi
jmp 0x55b8c9
fld dword [esi + 8]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edi, eax
fld dword [esi + 0xc]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b8e0
mov eax, 0xff
jmp 0x55b908
fld dword [esi + 0xc]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55b8f4
xor eax, eax
jmp 0x55b908
fld dword [esi + 0xc]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edx, dword [esp + 0x10]
fld st(1)
shl eax, 8
fstp dword [esp + 0x44]
or eax, edx
fld st(1)
mov edx, dword [ebx + 0x1dac4]
fstp dword [esp + 0x48]
shl eax, 8
or eax, ebp
shl eax, 8
or eax, edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x4c], 0
mov esi, dword [edx + 8]
fld dword [esi + 0x24]
add esi, 0x24
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b959
mov dword [esp + 0x10], 0xff
jmp 0x55b989
fld dword [esi]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55b972
mov dword [esp + 0x10], 0
jmp 0x55b989
fld dword [esi]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov dword [esp + 0x10], eax
fld dword [esi + 4]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b9a0
mov ebp, 0xff
jmp 0x55b9ca
fld dword [esi + 4]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55b9b4
xor ebp, ebp
jmp 0x55b9ca
fld dword [esi + 4]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov ebp, eax
fld dword [esi + 8]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55b9e1
mov edi, 0xff
jmp 0x55ba0b
fld dword [esi + 8]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55b9f5
xor edi, edi
jmp 0x55ba0b
fld dword [esi + 8]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edi, eax
fld dword [esi + 0xc]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55ba22
mov eax, 0xff
jmp 0x55ba4a
fld dword [esi + 0xc]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55ba36
xor eax, eax
jmp 0x55ba4a
fld dword [esi + 0xc]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edx, dword [esp + 0x10]
fst dword [esp + 0x5c]
shl eax, 8
fst dword [esp + 0x60]
or eax, edx
shl eax, 8
or eax, ebp
shl eax, 8
or eax, edi
mov dword [esp + 0x50], eax
mov eax, dword [ebx + 0x1dac4]
mov dword [esp + 0x64], 0
mov esi, dword [eax + 8]
fld dword [esi + 0x24]
add esi, 0x24
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55ba97
mov dword [esp + 0x10], 0xff
jmp 0x55bac7
fld dword [esi]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bab0
mov dword [esp + 0x10], 0
jmp 0x55bac7
fld dword [esi]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov dword [esp + 0x10], eax
fld dword [esi + 4]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bade
mov ebp, 0xff
jmp 0x55bb08
fld dword [esi + 4]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55baf2
xor ebp, ebp
jmp 0x55bb08
fld dword [esi + 4]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov ebp, eax
fld dword [esi + 8]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bb1f
mov edi, 0xff
jmp 0x55bb49
fld dword [esi + 8]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bb33
xor edi, edi
jmp 0x55bb49
fld dword [esi + 8]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edi, eax
fld dword [esi + 0xc]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bb60
mov eax, 0xff
jmp 0x55bb88
fld dword [esi + 0xc]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bb74
xor eax, eax
jmp 0x55bb88
fld dword [esi + 0xc]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edx, dword [esp + 0x10]
fxch st(1)
mov ecx, dword [ebx + 0x1dac4]
fstp dword [esp + 0x74]
shl eax, 8
or eax, edx
fstp dword [esp + 0x78]
shl eax, 8
or eax, ebp
shl eax, 8
or eax, edi
mov dword [esp + 0x68], eax
mov dword [esp + 0x7c], 0
mov esi, dword [ecx + 8]
fld dword [esi + 0x24]
add esi, 0x24
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bbd7
mov dword [esp + 0x10], 0xff
jmp 0x55bc07
fld dword [esi]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bbf0
mov dword [esp + 0x10], 0
jmp 0x55bc07
fld dword [esi]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov dword [esp + 0x10], eax
fld dword [esi + 4]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bc1e
mov ebp, 0xff
jmp 0x55bc48
fld dword [esi + 4]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bc32
xor ebp, ebp
jmp 0x55bc48
fld dword [esi + 4]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov ebp, eax
fld dword [esi + 8]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bc5f
mov edi, 0xff
jmp 0x55bc89
fld dword [esi + 8]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bc73
xor edi, edi
jmp 0x55bc89
fld dword [esi + 8]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edi, eax
fld dword [esi + 0xc]
fcomp dword [0x6bc4dc]
fnstsw ax
test ah, 1
jne 0x55bca0
mov eax, 0xff
jmp 0x55bcc8
fld dword [esi + 0xc]
fcomp dword [0x6bb5fc]
fnstsw ax
test ah, 0x41
jp 0x55bcb4
xor eax, eax
jmp 0x55bcc8
fld dword [esi + 0xc]
fmul dword [0x6bc8c4]
fadd dword [0x6bc860]
call fcn.005cd414
mov edx, dword [esp + 0x10]
shl eax, 8
or eax, edx
shl eax, 8
or eax, ebp
shl eax, 8
or eax, edi
mov dword [esp + 0x80], eax
mov eax, dword [ebx + 0x164]
test eax, eax
je 0x55bd39
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 1
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 2
push 0
push eax
call dword [ecx + 0x114]
mov dword [esp + 0x3c], 0xbf800000
mov dword [esp + 0x6c], 0xbf800000
mov dword [esp + 0x70], 0x40000000
mov dword [esp + 0x88], 0x40000000
jmp 0x55bd5c
mov dword [esp + 0x3c], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0x3f800000
mov dword [esp + 0x88], 0x3f800000
mov eax, dword [ebx + 0x128]
test eax, eax
mov dword [esp + 0x40], 0
mov dword [esp + 0x54], 0x3f800000
mov dword [esp + 0x58], 0
mov dword [esp + 0x84], 0x3f800000
je 0x55be6a
mov edx, dword [ebx + 0x1dac4]
mov eax, dword [edx + 8]
fld dword [eax + 0x18]
mov eax, dword [ebx + 0x130]
dec eax
je 0x55be2a
dec eax
je 0x55bded
dec eax
jne 0x55be68
fld st(0)
lea eax, [esp + 0x2c]
fcos
mov ecx, 4
fstp dword [esp + 0x10]
fsin
fld st(0)
add eax, 0x18
dec ecx
fmul dword [eax - 0x14]
fld dword [esp + 0x10]
fmul dword [eax - 0x18]
faddp st(1)
fld dword [esp + 0x10]
fmul dword [eax - 0x14]
fld st(2)
fmul dword [eax - 0x18]
fsubp st(1)
fstp dword [eax - 0x14]
fstp dword [eax - 0x18]
jne 0x55bdc3
jmp 0x55be68
fld st(0)
lea eax, [esp + 0x34]
fcos
mov ecx, 4
fstp dword [esp + 0x10]
fsin
fld st(0)
add eax, 0x18
dec ecx
fmul dword [eax - 0x20]
fld dword [esp + 0x10]
fmul dword [eax - 0x18]
faddp st(1)
fld dword [esp + 0x10]
fmul dword [eax - 0x20]
fld st(2)
fmul dword [eax - 0x18]
fsubp st(1)
fstp dword [eax - 0x20]
fstp dword [eax - 0x18]
jne 0x55be00
jmp 0x55be68
fld st(0)
lea eax, [esp + 0x30]
fcos
mov ecx, 4
fstp dword [esp + 0x10]
fsin
lea ecx, [ecx]
fld st(0)
add eax, 0x18
dec ecx
fmul dword [eax - 0x14]
fld dword [esp + 0x10]
fmul dword [eax - 0x18]
faddp st(1)
fld dword [esp + 0x10]
fmul dword [eax - 0x14]
fld st(2)
fmul dword [eax - 0x18]
fsubp st(1)
fstp dword [eax - 0x14]
fstp dword [eax - 0x18]
jne 0x55be40
fstp st(0)
mov eax, dword [ebx + 0x108]
dec eax
lea edi, [esp + 0x8c]
mov ecx, 0x10
je 0x55be9a
dec eax
je 0x55be93
dec eax
je 0x55be8c
mov esi, 0x2209504
jmp 0x55be9f
mov esi, 0x2209408
jmp 0x55be9f
mov esi, 0x2209584
jmp 0x55be9f
mov esi, 0x2209544
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x14]
push ecx
push 0x2209408
mov ecx, 0x2209408
call fcn.005417c0
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
fld dword [0x6bb5fc]
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc4], ecx
mov ecx, dword [ebx + 0x1dac4]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xbc], edx
mov edx, dword [ecx + 8]
fld dword [edx + 0x20]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x55bf75
mov eax, dword [ebx + 0x168]
dec eax
je 0x55bf2f
dec eax
je 0x55bf19
dec eax
jne 0x55bf43
mov eax, edx
mov ecx, dword [eax + 0x20]
push ecx
lea edx, [esp + 0xd0]
push edx
call fcn.005e5918
jmp 0x55bf43
mov eax, dword [ecx + 8]
mov ecx, dword [eax + 0x20]
push ecx
lea edx, [esp + 0xd0]
push edx
call fcn.005e5875
jmp 0x55bf43
mov eax, dword [ecx + 8]
mov ecx, dword [eax + 0x20]
push ecx
lea edx, [esp + 0xd0]
push edx
call fcn.005e57d3
lea eax, [esp + 0x8c]
push eax
lea ecx, [esp + 0xd0]
push ecx
lea edx, [esp + 0x114]
push edx
call fcn.005e4db8
mov ecx, 0x10
lea esi, [esp + 0x10c]
lea edi, [esp + 0x8c]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
lea edx, [esp + 0x8c]
push edx
push 0x100
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0x18
lea edx, [esp + 0x30]
push edx
push 2
push 5
push eax
call dword [ecx + 0x14c]
mov eax, dword [ebx + 0x1dac4]
mov ecx, dword [eax]
mov dword [ebx + 0x1dac4], ecx
mov eax, dword [ebx + 0x1dabc]
mov edx, ecx
cmp edx, eax
jne 0x55b770
pop edi
pop esi
pop ebp
mov eax, dword [ebx + 0x164]
test eax, eax
je 0x55bffc
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 1
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 2
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 9
push eax
call dword [ecx + 0xe4]
push 1
mov ecx, 0x2209408
call fcn.00541bb0
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
pop ebx
add esp, 0x13c
ret