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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x40c
push ebx
mov ebx, dword [ebp + 0x14]
push esi
push edi
push str._Coords
mov ecx, ebx
call fcn.00419d10
mov esi, eax
xor edi, edi
cmp esi, edi
je 0x43582a
push edi
mov ecx, esi
call fcn.00419a50
fstp qword [esp + 0x60]
push 1
mov ecx, esi
call fcn.00419a50
fstp qword [esp + 0x38]
push 2
mov ecx, esi
call fcn.00419a50
fstp qword [esp + 0x10]
push 3
mov ecx, esi
call fcn.00419a50
fstp qword [esp + 0x30]
push str._Domain
mov ecx, ebx
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], 0x3ff00000
call fcn.00419d10
mov esi, eax
cmp esi, edi
je 0x43540c
push edi
mov ecx, esi
call fcn.00419a50
fstp qword [esp + 0x20]
push 1
mov ecx, esi
call fcn.00419a50
fstp qword [esp + 0x40]
push str._Extend
mov ecx, ebx
mov dword [esp + 0x58], edi
mov dword [esp + 0x54], edi
call fcn.00419d10
mov esi, eax
cmp esi, edi
je 0x43543f
push edi
mov ecx, esi
call fcn.00419a30
push 1
mov ecx, esi
mov dword [esp + 0x58], eax
call fcn.00419a30
mov dword [esp + 0x50], eax
fld qword [esp + 0x30]
fsub qword [esp + 0x38]
mov eax, dword [ebp + 0xc]
sub esp, 8
sub esp, 8
mov dword [esp + 0x90], 0
mov ecx, dword [eax]
mov ebx, dword [eax + 8]
fst qword [esp + 0x38]
fld qword [esp + 0x20]
fsub qword [esp + 0x70]
mov dword [esp + 0x2c], ecx
sub ebx, ecx
mov ecx, dword [eax + 4]
mov eax, dword [eax + 0xc]
fst qword [esp + 0x20]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
mov dword [esp + 0x1c], ecx
sub eax, ecx
lea ecx, [esp + 0x78]
mov dword [esp + 0x5c], eax
faddp st(1)
mov dword [esp + 0x94], 0x3ff00000
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0x3ff00000
mov dword [esp + 0xa0], 0
fsqrt
mov dword [esp + 0xa4], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0x3ff00000
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0x3ff00000
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
fstp qword [esp + 0x68]
fstp st(0)
fstp st(0)
fild dword [esp + 0x1c]
fstp qword [esp + 8]
fild dword [esp + 0x2c]
fstp qword [esp]
push 0x3ff00000
push edi
push edi
push edi
push edi
push edi
push 0x3ff00000
push edi
call fcn.00421e30
mov eax, dword [ebp + 0x10]
lea ecx, [esp + 0x98]
push eax
call fcn.004221c0
lea ecx, [esp + 0x98]
push ecx
lea ecx, [esp + 0x6c]
call fcn.00422300
fld qword [esp + 0x88]
fsub qword [esp + 0x60]
fstp qword [esp + 0x88]
fld qword [esp + 0x90]
fsub qword [esp + 0x38]
fstp qword [esp + 0x90]
fld qword [esp + 0x10]
fdiv qword [esp + 0x58]
push edi
push edi
push edi
push edi
fstp qword [esp + 0x20]
fld qword [esp + 0x48]
fsub qword [esp + 0x40]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
push eax
push ecx
fdiv qword [esp + 0x70]
sub esp, 8
sub esp, 8
fstp qword [esp + 8]
fld qword [esp + 0x50]
fdiv qword [esp + 0x80]
fstp qword [esp]
push eax
push ecx
lea ecx, [esp + 0xc8]
call fcn.00421e30
lea edx, [esp + 0x98]
lea ecx, [esp + 0x68]
push edx
call fcn.00422300
fld qword [esp + 0x40]
fsub qword [esp + 0x20]
mov dword [esp + 0xc], edi
lea esi, [esp + 0x119]
fstp qword [esp + 0x28]
fild dword [esp + 0xc]
lea eax, [esp + 0x38]
lea ecx, [esp + 0xc8]
push eax
push ecx
fmul qword [esp + 0x30]
mov ecx, dword [ebp + 0x18]
lea edx, [esp + 0x38]
push 1
push edx
fmul qword [0x4da380]
fadd qword [esp + 0x30]
fstp qword [esp + 0x40]
call fcn.00433010
lea eax, [esp + 0x10]
lea ecx, [esp + 0x60]
push eax
lea edx, [esp + 0x44]
push ecx
mov ecx, dword [ebp + 0x1c]
lea eax, [esp + 0xd0]
push edx
push eax
call fcn.004331e0
fld qword [esp + 0x10]
fmul qword [0x4da168]
call fcn.00483e18
fld qword [esp + 0x60]
fmul qword [0x4da168]
mov byte [esi - 1], al
call fcn.00483e18
fld qword [esp + 0x40]
fmul qword [0x4da168]
mov byte [esi], al
call fcn.00483e18
mov byte [esi + 1], al
inc edi
add esi, 3
cmp edi, 0x100
mov dword [esp + 0xc], edi
jl 0x435672
lea eax, [ebx + ebx*2 + 3]
mov ecx, dword [esp + 0x4c]
cdq
and edx, 3
xor edi, edi
add eax, edx
mov dword [esp + 0x1c], edi
sar eax, 2
shl eax, 2
cmp ecx, edi
mov dword [esp + 0x38], eax
jle 0x43582a
mov esi, dword [ebp + 8]
mov dword [esp + 0xc], edi
cmp ebx, edi
mov dword [esp + 0x20], edi
jle 0x43580b
fild dword [esp + 0x1c]
fstp qword [esp + 0x28]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
fild dword [esp + 0x20]
mov dword [esp + 0x30], ecx
lea eax, [esp + 0x30]
lea ecx, [esp + 0x10]
push eax
fstp qword [esp + 0x14]
push ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0x3c], edx
call fcn.00421ff0
fld qword [esp + 0x10]
fdiv qword [esp + 0x58]
fcom qword [0x4d89d0]
fnstsw ax
test ah, 1
je 0x43579f
mov eax, dword [esp + 0x54]
test eax, eax
fstp st(0)
je 0x4357f1
fld qword [0x4d89d0]
jmp 0x4357bc
fcom qword [0x4d89c8]
fnstsw ax
test ah, 0x41
jne 0x4357bc
mov eax, dword [esp + 0x50]
test eax, eax
fstp st(0)
je 0x4357f1
fld qword [0x4d89c8]
fmul qword [0x4da168]
call fcn.00483e18
mov edx, dword [esp + 0xc]
lea eax, [eax + eax*2]
lea ecx, [edx + edi]
mov dl, byte [esp + eax + 0x118]
mov byte [ecx + esi], dl
mov dl, byte [esp + eax + 0x119]
mov al, byte [esp + eax + 0x11a]
inc ecx
mov byte [ecx + esi], dl
mov byte [ecx + esi + 1], al
mov eax, dword [esp + 0x20]
add edi, 3
inc eax
cmp eax, ebx
mov dword [esp + 0x20], eax
jl 0x43574d
mov eax, dword [esp + 0x38]
xor edi, edi
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x1c]
add edx, eax
inc ecx
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x4c]
cmp ecx, edx
mov dword [esp + 0x1c], ecx
jl 0x435739
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret