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

Disassembly:
sub esp, 0x3c
mov eax, dword [0x10092c4c]
xor eax, esp
mov dword [esp + 0x38], eax
push ebx
push ebp
push esi
mov esi, dword [0x10093708]
push edi
test byte [esi + 8], 2
mov byte [esi + 0x95], 0
je 0x10019ab9
test byte [esi + 0xc], 1
je 0x10019ab9
movaps xmm0, xmmword [0x100804b0]
lea edi, [esp + 0x28]
movups xmmword [esp + 0x28], xmm0
mov dl, 1
movaps xmm0, xmmword [0x100804c0]
mov byte [esp + 0x10], dl
movups xmmword [esp + 0x38], xmm0
nop dword [eax]
push dword [edi]
call fcn.10016890
add esp, 4
test al, al
je 0x10019aa8
mov dword [esi + 0x4828], 3
add edi, 4
lea eax, [esp + 0x48]
cmp edi, eax
jne 0x10019a90
mov al, byte [esp + 0x10]
jmp 0x10019abf
xor al, al
mov byte [esp + 0x10], al
mov cl, byte [esi + 8]
movaps xmm0, xmmword [0x100804a0]
and cl, 1
mov byte [esp + 0x12], cl
movups xmmword [esp + 0x28], xmm0
mov dword [esp + 0x38], 0x201
mov dword [esp + 0x3c], 0x203
mov dword [esp + 0x40], 0x204
je 0x10019b86
lea ebx, [esp + 0x28]
mov edi, dword [ebx]
push edi
push dword [0x10093708]
mov byte [esp + 0x19], al
call fcn.10013170
add esp, 8
cmp byte [eax], 0
je 0x10019b73
cmp edi, 0x200
jl 0x10019b25
cmp edi, 0x28c
jl 0x10019d2d
cmp edi, 0x1000
je 0x10019d2d
cmp edi, 0x2000
je 0x10019d2d
cmp edi, 0x4000
je 0x10019d2d
cmp edi, 0x8000
je 0x10019d2d
cmp edi, 0x800
je 0x10019d2d
mov dl, byte [esp + 0x11]
mov byte [esp + 0x10], dl
mov dword [esi + 0x4828], 2
mov al, byte [esp + 0x10]
add ebx, 4
lea ecx, [esp + 0x44]
cmp ebx, ecx
jne 0x10019af7
cmp dword [esi + 0x4844], 0
mov dword [esi + 0x4814], 0
je 0x10019c60
mov edi, dword [0x10093708]
mov edx, dword [edi + 0x47f8]
test edx, edx
je 0x10019c60
mov ecx, dword [edi + 0x4844]
lea ebx, [edi + 0x4848]
cmp dword [edi + 0x47fc], ecx
je 0x10019bdd
mov dword [edi + 0x4814], ecx
mov eax, dword [ebx]
mov dword [edi + 0x4818], eax
mov dword [edi + 0x481c], 0
test byte [edi + 0x5bbc], 8
je 0x10019bfd
push dword [edx + 4]
push dword [edi + 0x482c]
push ecx
push str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
call fcn.1000f600
add esp, 0x10
lea eax, [edi + 0x484c]
push eax
push dword [ebx]
push dword [edi + 0x482c]
push dword [edi + 0x4844]
call fcn.100227d0
mov byte [edi + 0x4838], 1
add esp, 0x10
mov ecx, dword [edi + 0x4860]
mov eax, ecx
mov edx, dword [edi + 0x4864]
and eax, edx
cmp eax, 0xffffffff
je 0x10019c42
mov dword [edi + 0x4830], ecx
mov dword [edi + 0x4834], edx
cmp byte [edi + 0x483e], 0
je 0x10019c60
mov eax, dword [0x10093708]
mov word [eax + 0x4839], 1
mov byte [eax + 0x483b], 1
cmp byte [esi + 0x4878], 0
mov word [esi + 0x483d], 0
mov dword [esi + 0x4844], 0
je 0x10019c81
call fcn.10018860
xor al, al
mov dword [esi + 0x48bc], 0
mov word [esi + 0x4878], 0
mov dword [esp + 0x20], eax
cmp byte [esi + 0x4839], al
je 0x10019cd0
cmp byte [esi + 0x4838], al
je 0x10019cd0
cmp byte [esi + 0x483a], al
jne 0x10019cd0
cmp byte [esi + 0x483b], al
je 0x10019cd0
cmp dword [esi + 0x47f8], 0
mov ecx, 1
movzx eax, al
cmovne eax, ecx
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x482c]
mov edi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov byte [esi + 0x4839], 0
mov dword [esp + 0x14], edi
test eax, eax
je 0x10019d04
cmp eax, 1
je 0x10019d04
push 0x2cb6
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.g.NavLayer__ImGuiNavLayer_Main__g.NavLayer__ImGuiNavLayer_Menu
call edi
add esp, 0xc
mov ecx, dword [esi + 0x47f8]
test ecx, ecx
je 0x10019d65
mov eax, ecx
cmp dword [eax + 0x300], eax
je 0x10019d5b
test dword [eax + 0xc], 0x14000000
jne 0x10019d5b
mov eax, dword [eax + 0x2f8]
test eax, eax
jne 0x10019d10
jmp 0x10019d65
push edi
push dword [0x10093708]
call fcn.10013340
mov cl, byte [esp + 0x19]
add esp, 8
mov dl, cl
mov byte [esp + 0x10], dl
cmp byte [eax + 8], 0
je 0x10019b69
mov al, cl
mov byte [esp + 0x10], al
jmp 0x10019b77
cmp eax, ecx
je 0x10019d65
mov dword [eax + 0x310], ecx
mov bl, byte [esp + 0x10]
mov eax, dword [esi + 0x47f8]
mov bh, bl
test eax, eax
je 0x10019d91
cmp dword [eax + 0x310], 0
je 0x10019d91
cmp dword [esi + 0x482c], 0
jne 0x10019d91
mov dword [eax + 0x310], 0
call fcn.1001b6d0
cmp byte [esp + 0x12], 0
jne 0x10019da5
test bl, bl
je 0x10019efd
mov eax, dword [esi + 0x47f8]
test eax, eax
je 0x10019efd
test dword [eax + 0xc], 0x40000
jne 0x10019efd
mov byte [esi + 0x97], 1
mov bl, bh
cmp dword [esi + 0x47fc], 0
je 0x10019f04
cmp byte [esi + 0x483a], 0
lea ebp, [esi + 0x483a]
jne 0x10019f04
lea ecx, [esi + 0x49a8]
mov al, 1
mov dword [esp + 0x18], ecx
mov bh, bl
mov byte [esi + 0x98], al
mov byte [esp + 0x11], bh
call fcn.1001a500
cmp dword [esi + 0x47fc], 0
mov dword [esi + 0x480c], 0
mov dword [esi + 0x4808], 0
mov dword [esi + 0x4804], 0
mov dword [esi + 0x4810], 0
je 0x1001a03f
cmp byte [esi + 0x483a], 0
lea edi, [esi + 0x483a]
mov ebp, edi
jne 0x1001a03b
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne 0x1001a03b
mov eax, dword [esi + 0x47f8]
test eax, eax
je 0x1001a03b
test dword [eax + 0xc], 0x40000
jne 0x1001a03b
mov bh, byte [esp + 0x12]
mov eax, dword [0x10093708]
test bh, bh
je 0x10019e97
cmp byte [eax + 0x2ea0], 0
je 0x10019e97
cmp byte [eax + 0x3f80], 0
je 0x10019eb5
test bl, bl
je 0x10019f2f
cmp byte [eax + 0x34c0], 0
je 0x10019f2f
cmp byte [eax + 0x4418], 0
jne 0x10019f2f
mov byte [esp + 0x13], 1
test bh, bh
je 0x10019ed8
push 0
push 0
push 0x20c
call fcn.10016900
add esp, 0xc
test al, al
jne 0x10019ef1
mov eax, dword [0x10093708]
test bl, bl
je 0x10019f34
push 0
push 0
push 0x26e
call fcn.10016900
add esp, 0xc
test al, al
je 0x10019f28
mov eax, dword [0x10093708]
mov byte [esp + 0x10], 1
jmp 0x10019f39
mov byte [esi + 0x97], 0
cmp dword [esi + 0x49a8], 0
lea ecx, [esi + 0x49a8]
mov dword [esp + 0x18], ecx
lea ebp, [esi + 0x483a]
jne 0x10019def
xor al, al
jmp 0x10019df5
mov eax, dword [0x10093708]
jmp 0x10019f34
mov byte [esp + 0x13], 0
mov byte [esp + 0x10], 0
test bh, bh
je 0x10019f4f
cmp byte [eax + 0x2eb0], 0
je 0x10019f4f
cmp byte [eax + 0x3f8c], 0
je 0x10019f65
test bl, bl
je 0x10019fa0
cmp byte [eax + 0x34b0], 0
je 0x10019fa0
cmp byte [eax + 0x440c], 0
jne 0x10019fa0
cmp byte [esp + 0x12], 0
mov bh, 1
je 0x10019f83
push 0
push 0
push 0x20d
call fcn.10016900
add esp, 0xc
test al, al
jne 0x10019f9c
test bl, bl
je 0x10019fa2
push 0
push 0
push 0x26d
call fcn.10016900
add esp, 0xc
test al, al
je 0x10019fa2
mov dl, 1
jmp 0x10019fa4
xor bh, bh
xor dl, dl
mov ecx, dword [esi + 0x3eac]
mov dh, byte [esp + 0x10]
test ecx, ecx
jne 0x10019fce
test dh, dh
je 0x10019fd6
mov eax, dword [esi + 0x47fc]
mov dword [esi + 0x4804], eax
mov dword [esi + 0x4810], 2
jmp 0x10019fd6
cmp ecx, dword [esi + 0x47fc]
jne 0x1001a037
test dl, dl
je 0x10019ff0
mov eax, dword [esi + 0x47fc]
mov dword [esi + 0x4804], eax
mov dword [esi + 0x4810], 1
test ecx, ecx
je 0x10019ffc
cmp ecx, dword [esi + 0x47fc]
jne 0x1001a037
cmp byte [esp + 0x13], 0
jne 0x1001a007
test bh, bh
je 0x1001a013
mov eax, dword [esi + 0x47fc]
mov dword [esi + 0x4808], eax
test ecx, ecx
je 0x1001a01f
cmp ecx, dword [esi + 0x47fc]
jne 0x1001a037
test dh, dh
jne 0x1001a029
mov ebp, edi
test dl, dl
je 0x1001a037
mov eax, dword [esi + 0x47fc]
mov ebp, edi
mov dword [esi + 0x480c], eax
mov bh, byte [esp + 0x11]
mov edi, dword [esp + 0x14]
mov eax, dword [esi + 0x47f8]
test eax, eax
je 0x1001a056
test dword [eax + 0xc], 0x40000
je 0x1001a056
mov byte [ebp], 1
mov eax, dword [esi + 0x4804]
test eax, eax
je 0x1001a07c
cmp dword [esi + 0x4808], eax
je 0x1001a07c
push 0x2ce3
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.g.NavActivateDownId__g.NavActivateId
call edi
add esp, 0xc
mov eax, dword [esi + 0x4820]
test eax, eax
je 0x1001a0a4
mov dword [esi + 0x480c], eax
mov dword [esi + 0x4808], eax
mov dword [esi + 0x4804], eax
mov eax, dword [esi + 0x4824]
mov dword [esi + 0x4810], eax
mov dword [esi + 0x4820], 0
call fcn.1001a750
cmp dword [esi + 0x4888], 0xffffffff
jne 0x1001a1cd
mov edi, dword [0x10093708]
cmp dword [edi + 0x4888], 0xffffffff
mov eax, dword [edi + 0x47f8]
mov dword [esp + 0x1c], eax
je 0x1001a0f3
push 0x2dd8
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.g.NavMoveDir__ImGuiDir_None
call dword [esp + 0x20]
mov eax, dword [esp + 0x28]
add esp, 0xc
test eax, eax
je 0x1001a1cd
cmp dword [edi + 0x49a8], 0
jne 0x1001a1cd
test dword [eax + 0xc], 0x40000
jne 0x1001a1cd
push 1
push 0xffffffffffffffff
push 0x200
call fcn.10016900
add esp, 0xc
test al, al
je 0x1001a1cd
cmp byte [edi + 0xdd8], 0
jne 0x1001a1cd
cmp byte [edi + 0xdda], 0
jne 0x1001a1cd
test byte [edi + 8], 1
mov al, byte [edi + 0xdd9]
je 0x1001a17a
test al, al
je 0x1001a15d
or ecx, 0xffffffff
jmp 0x1001a18e
cmp byte [edi + 0x483a], 1
jne 0x1001a173
cmp dword [edi + 0x3eac], 0
jne 0x1001a173
xor ecx, ecx
jmp 0x1001a18e
mov ecx, 1
jmp 0x1001a18e
test al, al
je 0x1001a183
or ecx, 0xffffffff
jmp 0x1001a18e
xor ecx, ecx
cmp dword [edi + 0x3eac], ecx
setne cl
mov edx, dword [esp + 0x1c]
mov eax, 3
mov dword [edi + 0x48b8], ecx
cmp byte [edx + 0xb0], 0
mov edx, 0x21
cmovne eax, edx
sar ecx, 0x1f
push eax
push 0x1400
add ecx, 3
push ecx
push 0xffffffffffffffff
call fcn.10018ea0
add esp, 0x10
mov dword [edi + 0x48bc], 0xffffffff
mov eax, dword [0x10093708]
cmp byte [eax + 0x4879], 0
jne 0x1001a1ed
cmp byte [eax + 0x483d], 0
jne 0x1001a1ed
mov byte [eax + 0x483c], 0
jmp 0x1001a215
cmp dword [eax + 0x47f8], 0
mov bl, bh
mov byte [eax + 0x483c], 1
jne 0x1001a215
push 0x2c35
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.g.NavWindow___0
call dword [esp + 0x20]
add esp, 0xc
mov ecx, dword [esi + 0x47f8]
mov byte [esi + 0x4838], 0
test ecx, ecx
je 0x1001a429
test dword [ecx + 0xc], 0x40000
jne 0x1001a429
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne 0x1001a429
mov eax, dword [ecx]
movss xmm0, dword [eax + 0x3bd0]
mov eax, dword [ecx + 0x2f8]
mulss xmm0, dword [ecx + 0x25c]
test eax, eax
je 0x1001a268
mulss xmm0, dword [eax + 0x25c]
cmp word [ecx + 0x14c], 0
xorps xmm4, xmm4
mulss xmm0, dword [0x100792d4]
mov edx, dword [esi + 0x4888]
movss xmm2, dword [0x10079280]
mulss xmm0, dword [esi + 0x18]
addss xmm0, dword [0x10079278]
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
jne 0x1001a343
cmp byte [ecx + 0x152], 0
je 0x1001a343
cmp edx, 0xffffffff
je 0x1001a343
movss xmm1, dword [0x100792dc]
test edx, edx
je 0x1001a2d3
cmp edx, 1
jne 0x1001a306
movaps xmm0, xmm2
jmp 0x1001a2d6
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 0x1001a313
cmp edx, 3
jne 0x1001a343
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
test bl, bl
je 0x1001a429
mov eax, dword [0x10093708]
cmp byte [eax + 0x3510], 0
movss xmm0, dword [eax + 0x358c]
movss xmm1, dword [eax + 0x35ac]
subss xmm0, dword [eax + 0x357c]
subss xmm1, dword [eax + 0x359c]
je 0x1001a382
cmp byte [eax + 0x4454], 0
je 0x1001a39e
cmp byte [eax + 0x3520], 0
je 0x1001a3a6
cmp byte [eax + 0x4460], 0
jne 0x1001a3a6
movss xmm2, dword [0x100792b0]
jmp 0x1001a3a6
movss xmm2, dword [0x10079264]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x1001a3ec
cmp byte [ecx + 0xa8], 0
je 0x1001a3ec
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 0x1001a429
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
cmp byte [esp + 0x12], 0
jne 0x1001a440
test bl, bl
jne 0x1001a440
mov byte [ebp], 1
mov byte [esi + 0x483b], bl
jmp 0x1001a490
cmp byte [esp + 0x20], 0
je 0x1001a490
test byte [esi + 8], 4
je 0x1001a490
test byte [esi + 0xc], 4
je 0x1001a490
lea eax, [esp + 0x20]
push eax
call fcn.100184f0
add esp, 4
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 + 0x48]
pop edi
mov dword [esi + 0x48b4], 0
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10074697
add esp, 0x3c
ret