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

Disassembly:
sub esp, 0x5c
mov eax, dword [0x100a801c]
xor eax, esp
mov dword [esp + 0x54], eax
push ebx
mov ebx, dword [0x100a9f28]
push ebp
push esi
mov esi, ebx
push edi
test byte [esi + 8], 2
mov byte [esi + 0x95], 0
je 0x10023ba2
test byte [esi + 0xc], 1
je 0x10023ba2
movaps xmm0, xmmword [0x1009e670]
lea edi, [esp + 0x44]
movups xmmword [esp + 0x44], xmm0
mov byte [esp + 0x17], 1
movaps xmm0, xmmword [0x1009e680]
movups xmmword [esp + 0x54], xmm0
nop
mov ecx, dword [edi]
call fcn.1001ef40
test al, al
je 0x10023b95
mov dword [esi + 0x4820], 3
add edi, 4
lea eax, [esp + 0x64]
cmp edi, eax
jne 0x10023b80
jmp 0x10023ba7
mov byte [esp + 0x17], 0
mov al, byte [esi + 8]
movaps xmm0, xmmword [0x1009e660]
and al, 1
mov byte [esp + 0x19], al
movups xmmword [esp + 0x28], xmm0
mov dword [esp + 0x38], 0x201
mov dword [esp + 0x3c], 0x203
mov dword [esp + 0x40], 0x204
je 0x10023c00
lea edi, [esp + 0x28]
nop word [eax + eax]
mov ecx, dword [edi]
call fcn.1001ef40
test al, al
je 0x10023bf5
mov dword [esi + 0x4820], 2
add edi, 4
lea eax, [esp + 0x44]
cmp edi, eax
jne 0x10023be0
mov ecx, dword [esi + 0x4834]
mov dword [esi + 0x480c], 0
test ecx, ecx
je 0x10023cb3
mov edi, ebx
mov edx, dword [edi + 0x47f0]
test edx, edx
je 0x10023cb3
cmp dword [edi + 0x47f4], ecx
je 0x10023c4c
mov dword [esi + 0x480c], ecx
mov eax, dword [edi + 0x4838]
mov dword [edi + 0x4810], eax
mov dword [edi + 0x4814], 0
test byte [edi + 0x5b14], 8
je 0x10023c72
push dword [edx + 4]
push dword [edi + 0x4824]
push ecx
push str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
call fcn.100276c0
mov ebx, dword [0x100a9f28]
add esp, 0x10
mov edx, dword [edi + 0x4824]
lea eax, [edi + 0x483c]
mov ecx, dword [esi + 0x4834]
push eax
push dword [edi + 0x4838]
call fcn.10022980
add esp, 8
mov byte [edi + 0x4828], 1
cmp byte [edi + 0x482e], 0
je 0x10023cb3
mov word [ebx + 0x4829], 1
mov byte [ebx + 0x482b], 1
cmp byte [esi + 0x485c], 0
mov word [esi + 0x482d], 0
mov dword [esi + 0x4834], 0
je 0x10023cd4
call fcn.10024c80
xor al, al
mov dword [esi + 0x48a0], 0
mov word [esi + 0x485c], 0
mov dword [esp + 0x20], eax
cmp byte [esi + 0x4829], al
je 0x10023d23
cmp byte [esi + 0x4828], al
je 0x10023d23
cmp byte [esi + 0x482a], al
jne 0x10023d23
cmp byte [esi + 0x482b], al
je 0x10023d23
cmp dword [esi + 0x47f0], 0
mov ecx, 1
movzx eax, al
cmovne eax, ecx
mov dword [esp + 0x20], eax
mov ecx, dword [esi + 0x47f0]
mov byte [esi + 0x4829], 0
test ecx, ecx
je 0x10023d5d
mov eax, ecx
cmp dword [eax + 0x300], eax
je 0x10023d53
test dword [eax + 0xc], 0x14000000
jne 0x10023d53
mov eax, dword [eax + 0x2f8]
test eax, eax
jne 0x10023d36
jmp 0x10023d5d
cmp eax, ecx
je 0x10023d5d
mov dword [eax + 0x310], ecx
mov bh, byte [esp + 0x17]
mov eax, dword [esi + 0x47f0]
mov bl, bh
test eax, eax
je 0x10023d89
cmp dword [eax + 0x310], 0
je 0x10023d89
cmp dword [esi + 0x4824], 0
jne 0x10023d89
mov dword [eax + 0x310], 0
call fcn.10025a90
cmp byte [esp + 0x19], 0
jne 0x10023d9d
test bh, bh
je 0x10023eea
mov eax, dword [esi + 0x47f0]
test eax, eax
je 0x10023eea
test dword [eax + 0xc], 0x40000
jne 0x10023eea
mov byte [esi + 0x97], 1
cmp dword [esi + 0x47f4], 0
mov byte [esp + 0x17], bl
je 0x10023ef1
cmp byte [esi + 0x482a], 0
lea ebp, [esi + 0x482a]
mov byte [esp + 0x17], bl
jne 0x10023ef1
lea edi, [esi + 0x495c]
mov byte [esp + 0x17], bl
mov al, 1
mov dword [esp + 0x1c], edi
mov byte [esi + 0x98], al
call fcn.100250b0
cmp dword [esi + 0x47f4], 0
mov dword [esi + 0x4804], 0
mov dword [esi + 0x4800], 0
mov dword [esi + 0x47fc], 0
mov dword [esi + 0x4808], 0
je 0x1002400f
cmp byte [esi + 0x482a], 0
lea ebx, [esi + 0x482a]
mov ebp, ebx
jne 0x1002400f
cmp dword [edi], 0
jne 0x1002400f
mov eax, dword [esi + 0x47f0]
test eax, eax
je 0x1002400f
test dword [eax + 0xc], 0x40000
jne 0x1002400f
mov al, byte [esp + 0x19]
mov edi, dword [0x100a9f28]
test al, al
je 0x10023e90
cmp byte [edi + 0x2ea0], 0
je 0x10023e90
cmp byte [edi + 0x3f80], 0
je 0x10023ea9
cmp byte [esp + 0x17], 0
je 0x10023f15
cmp byte [edi + 0x34c0], 0
je 0x10023f15
cmp byte [edi + 0x4418], 0
jne 0x10023f15
mov byte [esp + 0x1a], 1
test al, al
je 0x10023ec7
push 0
xor edx, edx
mov ecx, 0x20c
call fcn.1001f000
add esp, 4
test al, al
jne 0x10023ee3
cmp byte [esp + 0x17], 0
je 0x10023f1a
push 0
xor edx, edx
mov ecx, 0x26e
call fcn.1001f000
add esp, 4
test al, al
je 0x10023f1a
mov byte [esp + 0x18], 1
jmp 0x10023f1f
mov byte [esi + 0x97], 0
cmp dword [esi + 0x495c], 0
lea edi, [esi + 0x495c]
mov dword [esp + 0x1c], edi
lea ebp, [esi + 0x482a]
jne 0x10023df1
xor al, al
jmp 0x10023df7
mov byte [esp + 0x1a], 0
mov byte [esp + 0x18], 0
mov al, byte [esp + 0x19]
test al, al
je 0x10023f39
cmp byte [edi + 0x2eb0], 0
je 0x10023f39
cmp byte [edi + 0x3f8c], 0
je 0x10023f52
cmp byte [esp + 0x17], 0
je 0x10023f90
cmp byte [edi + 0x34b0], 0
je 0x10023f90
cmp byte [edi + 0x440c], 0
jne 0x10023f90
mov byte [esp + 0x1b], 1
test al, al
je 0x10023f70
push 0
xor edx, edx
mov ecx, 0x20d
call fcn.1001f000
add esp, 4
test al, al
jne 0x10023f8c
cmp byte [esp + 0x17], 0
je 0x10023f95
push 0
xor edx, edx
mov ecx, 0x26d
call fcn.1001f000
add esp, 4
test al, al
je 0x10023f95
mov cl, 1
jmp 0x10023f97
mov byte [esp + 0x1b], 0
xor cl, cl
mov eax, dword [esi + 0x3eac]
mov edx, dword [esi + 0x47f4]
mov ch, byte [esp + 0x18]
test eax, eax
jne 0x10023fc1
test ch, ch
je 0x10023fc5
mov dword [esi + 0x47fc], edx
mov dword [esi + 0x4808], 2
jmp 0x10023fc5
cmp eax, edx
jne 0x1002400f
test cl, cl
je 0x10023fd9
mov dword [esi + 0x47fc], edx
mov dword [esi + 0x4808], 1
test eax, eax
je 0x10023fe1
cmp eax, edx
jne 0x1002400f
cmp byte [esp + 0x1a], 0
jne 0x10023fef
cmp byte [esp + 0x1b], 0
je 0x10023ff5
mov dword [esi + 0x4800], edx
test eax, eax
je 0x10023ffd
cmp eax, edx
jne 0x1002400f
test ch, ch
jne 0x10024007
mov ebp, ebx
test cl, cl
je 0x1002400f
mov dword [esi + 0x4804], edx
mov ebp, ebx
mov eax, dword [esi + 0x47f0]
test eax, eax
je 0x10024026
test dword [eax + 0xc], 0x40000
je 0x10024026
mov byte [ebp], 1
mov eax, dword [esi + 0x4818]
test eax, eax
je 0x1002404e
mov dword [esi + 0x4804], eax
mov dword [esi + 0x4800], eax
mov dword [esi + 0x47fc], eax
mov eax, dword [esi + 0x481c]
mov dword [esi + 0x4808], eax
mov dword [esi + 0x4818], 0
call fcn.10024410
cmp dword [esi + 0x486c], 0xffffffff
mov edi, dword [0x100a9f28]
jne 0x1002414d
mov ebx, dword [edi + 0x47f0]
test ebx, ebx
je 0x1002414d
cmp dword [edi + 0x495c], 0
jne 0x1002414d
test dword [ebx + 0xc], 0x40000
jne 0x1002414d
push 1
or edx, 0xffffffff
mov ecx, 0x200
call fcn.1001f000
add esp, 4
test al, al
je 0x1002414d
cmp byte [edi + 0xdd8], 0
jne 0x1002414d
cmp byte [edi + 0xdda], 0
jne 0x1002414d
test byte [edi + 8], 1
mov al, byte [edi + 0xdd9]
je 0x100240fe
test al, al
je 0x100240e1
or edx, 0xffffffff
jmp 0x10024112
cmp byte [edi + 0x482a], 1
jne 0x100240f7
cmp dword [edi + 0x3eac], 0
jne 0x100240f7
xor edx, edx
jmp 0x10024112
mov edx, 1
jmp 0x10024112
test al, al
je 0x10024107
or edx, 0xffffffff
jmp 0x10024112
xor edx, edx
cmp dword [edi + 0x3eac], edx
setne dl
mov dword [edi + 0x489c], edx
mov ecx, 0x21
cmp byte [ebx + 0xb0], 0
mov eax, 3
cmovne eax, ecx
sar edx, 0x1f
push eax
push 0x1400
add edx, 3
or ecx, 0xffffffff
call fcn.10023440
add esp, 8
mov dword [edi + 0x48a0], 0xffffffff
cmp byte [edi + 0x485d], 0
jne 0x10024163
cmp byte [edi + 0x482d], 0
jne 0x10024163
xor al, al
jmp 0x10024165
mov al, 1
mov byte [edi + 0x482c], al
mov ecx, dword [esi + 0x47f0]
mov byte [esi + 0x4828], 0
test ecx, ecx
je 0x10024380
test dword [ecx + 0xc], 0x40000
jne 0x10024380
mov eax, dword [esp + 0x1c]
cmp dword [eax], 0
jne 0x10024380
mov eax, dword [ecx]
movss xmm0, dword [eax + 0x3bd0]
mov eax, dword [ecx + 0x2f8]
mulss xmm0, dword [ecx + 0x25c]
test eax, eax
je 0x100241be
mulss xmm0, dword [eax + 0x25c]
cmp word [ecx + 0x14c], 0
xorps xmm4, xmm4
mulss xmm0, dword [0x1009e564]
mov edx, dword [esi + 0x486c]
movss xmm2, dword [0x1009e48c]
mulss xmm0, dword [esi + 0x18]
addss xmm0, dword [0x1009e450]
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
jne 0x10024299
cmp byte [ecx + 0x152], 0
je 0x10024299
cmp edx, 0xffffffff
je 0x10024299
movss xmm1, dword [0x1009e5d0]
test edx, edx
je 0x10024229
cmp edx, 1
jne 0x1002425c
movaps xmm0, xmm2
jmp 0x1002422c
movaps xmm0, xmm1
mulss xmm0, xmm3
mov dword [ecx + 0x90], 0
mov dword [ecx + 0x98], 0
addss xmm0, dword [ecx + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0x88], xmm0
cmp edx, 2
je 0x10024269
cmp edx, 3
jne 0x10024299
movaps xmm1, xmm2
mulss xmm1, xmm3
mov dword [ecx + 0x94], 0
mov dword [ecx + 0x9c], 0
addss xmm1, dword [ecx + 0x7c]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0x8c], xmm0
mov dl, byte [esp + 0x17]
test dl, dl
je 0x10024384
cmp byte [edi + 0x3510], 0
movss xmm1, dword [edi + 0x35ac]
movss xmm0, dword [edi + 0x358c]
subss xmm1, dword [edi + 0x359c]
subss xmm0, dword [edi + 0x357c]
je 0x100242d7
cmp byte [edi + 0x4454], 0
je 0x100242f3
cmp byte [edi + 0x3520], 0
je 0x100242fb
cmp byte [edi + 0x4460], 0
jne 0x100242fb
movss xmm2, dword [0x1009e540]
jmp 0x100242fb
movss xmm2, dword [0x1009e428]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x10024341
cmp byte [ecx + 0xa8], 0
je 0x10024341
mulss xmm0, xmm3
mov dword [ecx + 0x90], 0
mov dword [ecx + 0x98], 0
mulss xmm0, xmm2
addss xmm0, dword [ecx + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0x88], xmm0
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x10024384
mulss xmm1, xmm3
mov dword [ecx + 0x94], 0
mov dword [ecx + 0x9c], 0
mulss xmm1, xmm2
addss xmm1, dword [ecx + 0x7c]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0x8c], xmm0
jmp 0x10024384
mov dl, byte [esp + 0x17]
cmp byte [esp + 0x19], 0
jne 0x1002439b
test dl, dl
jne 0x1002439b
mov byte [ebp], 1
mov byte [esi + 0x482b], dl
jmp 0x100243e7
cmp byte [esp + 0x20], 0
je 0x100243e7
test byte [esi + 8], 4
je 0x100243e7
test byte [esi + 0xc], 4
je 0x100243e7
lea ecx, [esp + 0x20]
call fcn.100238b0
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [esi + 0x36a4], xmm0
movss dword [esi + 0x36a8], xmm1
movss dword [esi + 0xdbc], xmm0
movss dword [esi + 0xdc0], xmm1
mov byte [esi + 0x95], 1
mov ecx, dword [esp + 0x64]
pop edi
mov dword [esi + 0x4898], 0
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1004ad35
add esp, 0x5c
ret