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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x308
mov rax, qword [0x140211040]
xor rax, rsp
mov qword [rsp + 0x2f8], rax
mov rax, qword [0x1402129e0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x320]
mov eax, dword [rax + 0x14]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 2
test eax, eax
jne 0x14008a026
mov eax, dword [rsp + 0x50]
and eax, 0x40
test eax, eax
jne 0x14008a026
mov rax, qword [rsp + 0x320]
movsx eax, byte [rax + 0xdc]
test eax, eax
jg 0x14008a026
mov rax, qword [rsp + 0x320]
movsx eax, byte [rax + 0xdd]
test eax, eax
jle 0x14008a02d
xor eax, eax
jmp 0x14008b661
mov rax, qword [rsp + 0x320]
movzx eax, byte [rax + 0xbf]
test eax, eax
jne 0x14008a047
xor eax, eax
jmp 0x14008b661
mov dword [rsp + 0x68], 0
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rax + 0x60]
addss xmm0, dword [0x1401fd4d8]
mov rax, qword [rsp + 0x30]
movss xmm1, dword [rax + 0x3d38]
mulss xmm1, dword [0x1401fd3e8]
addss xmm0, xmm1
mov rax, qword [rsp + 0x30]
movss xmm1, dword [rax + 0x3d38]
mulss xmm1, dword [0x1401fd4e8]
movss dword [rsp + 0xe8], xmm1
movaps xmm1, xmm0
movss xmm0, dword [rsp + 0xe8]
call fcn.1400a7dd0
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0xec], xmm0
movss xmm0, dword [rsp + 0xec]
mulss xmm0, dword [0x1401fd48c]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x64], xmm0
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x5e]
test eax, eax
je 0x14008a0f9
movss xmm0, dword [0x1401fd5d8]
movss dword [rsp + 0x74], xmm0
jmp 0x14008a102
xorps xmm0, xmm0
movss dword [rsp + 0x74], xmm0
movss xmm0, dword [rsp + 0x74]
movss dword [rsp + 0x90], xmm0
lea rax, [rsp + 0x288]
mov rdi, rax
mov rsi, qword [rsp + 0x350]
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x5f]
test eax, eax
je 0x14008a151
mov rax, qword [rsp + 0x320]
mov eax, dword [rax + 0x14]
and eax, 1
test eax, eax
jne 0x14008a151
mov byte [rsp + 0x44], 1
jmp 0x14008a156
mov byte [rsp + 0x44], 0
movzx eax, byte [rsp + 0x44]
mov byte [rsp + 0x3c], al
movzx eax, byte [rsp + 0x3c]
test eax, eax
je 0x14008a18e
mov rcx, qword [rsp + 0x320]
call fcn.14007b7c0
movss xmm1, dword [rsp + 0x28c]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x28c], xmm0
movss xmm2, dword [0x1401fd704]
movss xmm1, dword [0x1401fd704]
lea rcx, [rsp + 0x278]
call fcn.1400133f0
movss xmm2, dword [0x1401fd704]
movss xmm1, dword [0x1401fd704]
lea rcx, [rsp + 0x268]
call fcn.1400133f0
mov rax, qword [rsp + 0x320]
mov dword [rax + 0x168], 1
lea rcx, str.RESIZE
call fcn.140092c10
nop
mov dword [rsp + 0x48], 0
jmp 0x14008a1fb
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x340]
cmp dword [rsp + 0x48], eax
jge 0x14008a797
movsxd rax, dword [rsp + 0x48]
imul rax, rax, 0x18
lea rcx, [0x1401dd820]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0xf8], rax
mov rcx, qword [rsp + 0x320]
add rcx, 0x30
mov rdx, qword [rsp + 0x320]
add rdx, 0x28
mov r8, rcx
lea rcx, [rsp + 0x1f8]
call fcn.140077d90
mov rcx, qword [rsp + 0x320]
add rcx, 0x28
mov rdx, qword [rsp + 0xf8]
mov r9, rdx
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x2b8]
call fcn.1400787d0
nop
mov rax, qword [rsp + 0x58]
add rax, 8
movss xmm2, dword [rsp + 0x64]
mov rdx, rax
lea rcx, [rsp + 0x200]
call fcn.140077cf0
mov r8, rax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x208]
call fcn.140077d90
mov qword [rsp + 0x170], rax
mov rax, qword [rsp + 0x58]
add rax, 8
movss xmm2, dword [rsp + 0x90]
mov rdx, rax
lea rcx, [rsp + 0x210]
call fcn.140077cf0
mov r8, rax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x218]
call fcn.140077de0
mov qword [rsp + 0x178], rax
mov r8, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x178]
lea rcx, [rsp + 0x298]
call fcn.140078b80
nop
movss xmm0, dword [rsp + 0x298]
comiss xmm0, dword [rsp + 0x2a0]
jbe 0x14008a34f
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0x298]
call fcn.1400a7e80
nop
movss xmm0, dword [rsp + 0x29c]
comiss xmm0, dword [rsp + 0x2a4]
jbe 0x14008a378
lea rdx, [rsp + 0x2a4]
lea rcx, [rsp + 0x29c]
call fcn.1400a7e80
nop
mov edx, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x320]
call fcn.140083100
mov dword [rsp + 0x78], eax
mov r9d, 8
xor r8d, r8d
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x298]
call fcn.1400981a0
mov dword [rsp + 0x20], 0x40800
lea r9, [rsp + 0x262]
lea r8, [rsp + 0x263]
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x298]
call fcn.1400d7230
nop
movzx eax, byte [rsp + 0x263]
test eax, eax
jne 0x14008a3e9
movzx eax, byte [rsp + 0x262]
test eax, eax
je 0x14008a415
mov eax, dword [rsp + 0x48]
and eax, 1
test eax, eax
je 0x14008a3fe
mov dword [rsp + 0x7c], 5
jmp 0x14008a406
mov dword [rsp + 0x7c], 6
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x7c]
mov dword [rax + 0x4ee8], ecx
movzx eax, byte [rsp + 0x262]
test eax, eax
je 0x14008a476
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x30]
movzx eax, byte [rcx + rax + 0x3865]
test eax, eax
je 0x14008a476
mov r8, qword [rsp + 0x328]
mov rdx, qword [rsp + 0x320]
lea rcx, [rsp + 0x220]
call fcn.140089320
mov rax, qword [rax]
mov qword [rsp + 0x268], rax
mov dword [rsp + 0x68], 3
call fcn.140083750
nop
jmp 0x14008a704
movzx eax, byte [rsp + 0x262]
test eax, eax
je 0x14008a704
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 4]
ucomiss xmm0, dword [0x1401fd4d8]
jp 0x14008a49b
je 0x14008a4cc
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 4]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008a4b9
jne 0x14008a4b9
movzx eax, byte [rsp + 0x3c]
test eax, eax
jne 0x14008a4cc
movss xmm0, dword [0x1401fd770]
movss dword [rsp + 0x80], xmm0
jmp 0x14008a4de
movss xmm0, dword [rsp + 0x28c]
movss dword [rsp + 0x80], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax]
ucomiss xmm0, dword [0x1401fd4d8]
jp 0x14008a506
jne 0x14008a506
movss xmm0, dword [rsp + 0x288]
movss dword [rsp + 0x84], xmm0
jmp 0x14008a517
movss xmm0, dword [0x1401fd770]
movss dword [rsp + 0x84], xmm0
movss xmm2, dword [rsp + 0x80]
movss xmm1, dword [rsp + 0x84]
lea rcx, [rsp + 0x2e0]
call fcn.1400133f0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 4]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008a55f
jne 0x14008a55f
movss xmm0, dword [rsp + 0x294]
movss dword [rsp + 0x88], xmm0
jmp 0x14008a570
movss xmm0, dword [0x1401fd704]
movss dword [rsp + 0x88], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008a598
jne 0x14008a598
movss xmm0, dword [rsp + 0x290]
movss dword [rsp + 0x8c], xmm0
jmp 0x14008a5a9
movss xmm0, dword [0x1401fd704]
movss dword [rsp + 0x8c], xmm0
movss xmm2, dword [rsp + 0x88]
movss xmm1, dword [rsp + 0x8c]
lea rcx, [rsp + 0x250]
call fcn.1400133f0
nop
movss xmm0, dword [rsp + 0x64]
xorps xmm0, xmmword [0x1401fd7a0]
mov rax, qword [rsp + 0x58]
add rax, 8
movaps xmm2, xmm0
mov rdx, rax
lea rcx, [rsp + 0x228]
call fcn.140077cf0
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x58]
add rax, 8
movss xmm2, dword [rsp + 0x90]
mov rdx, rax
lea rcx, [rsp + 0x230]
call fcn.140077cf0
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x58]
mov r9, rax
mov r8, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
lea rcx, [rsp + 0x238]
call fcn.1400787d0
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x30]
add rax, 0x407c
mov rcx, qword [rsp + 0x30]
add rcx, 0xe40
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x180]
call fcn.140077de0
mov qword [rsp + 0x120], rax
mov r8, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x120]
lea rcx, [rsp + 0x2b0]
call fcn.140077d90
nop
mov r9, qword [rsp + 0x250]
lea r8, [rsp + 0x2e0]
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x188]
call fcn.1400786d0
mov rax, qword [rax]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x58]
lea rcx, [rsp + 0x268]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x278]
mov r8, rax
lea rdx, [rsp + 0x2b0]
mov rcx, qword [rsp + 0x320]
call fcn.140089bf0
nop
cmp dword [rsp + 0x48], 0
je 0x14008a723
movzx eax, byte [rsp + 0x262]
test eax, eax
jne 0x14008a723
movzx eax, byte [rsp + 0x263]
test eax, eax
je 0x14008a792
movzx eax, byte [rsp + 0x262]
test eax, eax
je 0x14008a73c
mov dword [rsp + 0x98], reloc.WLDAP32.dll_Ordinal_32
jmp 0x14008a76e
movzx eax, byte [rsp + 0x263]
test eax, eax
je 0x14008a755
mov dword [rsp + 0x94], Ordinal_41
jmp 0x14008a760
mov dword [rsp + 0x94], reloc.WLDAP32.dll_Ordinal_30
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x98], eax
movss xmm1, dword [0x1401fd4d8]
mov ecx, dword [rsp + 0x98]
call fcn.1400801d0
movsxd rcx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x348]
mov dword [rdx + rcx*4], eax
jmp 0x14008a1f1
mov dword [rsp + 0x60], 0
mov rax, qword [rsp + 0x320]
mov eax, dword [rax + 0x14]
and eax, 0x1000000
test eax, eax
je 0x14008a81e
mov rax, qword [rsp + 0x320]
mov eax, dword [rax + 0x18]
and eax, 4
test eax, eax
je 0x14008a7d2
mov dword [rsp + 0x9c], 2
jmp 0x14008a7dd
mov dword [rsp + 0x9c], 0
mov rax, qword [rsp + 0x320]
mov eax, dword [rax + 0x18]
and eax, 8
test eax, eax
je 0x14008a7f9
mov dword [rsp + 0x70], 8
jmp 0x14008a801
mov dword [rsp + 0x70], 0
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x9c]
or ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x60]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
jmp 0x14008a84e
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x5e]
test eax, eax
je 0x14008a838
mov dword [rsp + 0xa0], reloc.WS2_32.dll_ntohs
jmp 0x14008a843
mov dword [rsp + 0xa0], 0
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x38], 0
jmp 0x14008a862
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 4
jge 0x14008b0dc
mov eax, dword [rsp + 0x38]
mov ecx, 1
mov dword [rsp + 0xe4], ecx
movzx ecx, al
mov eax, dword [rsp + 0xe4]
shl eax, cl
mov ecx, dword [rsp + 0x60]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14008a897
jmp 0x14008a858
movsxd rax, dword [rsp + 0x38]
imul rax, rax, 0x1c
lea rcx, [0x1401dd640]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xd0], rax
cmp dword [rsp + 0x38], 0
je 0x14008a8d0
cmp dword [rsp + 0x38], 1
je 0x14008a8d0
mov dword [rsp + 0xa4], 1
jmp 0x14008a8db
mov dword [rsp + 0xa4], 0
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x40], eax
movss xmm0, dword [0x1401fd5d8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x64]
mov r8d, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x320]
lea rcx, [rsp + 0x2d0]
call fcn.140089d40
mov eax, dword [rsp + 0x38]
add eax, 4
mov edx, eax
mov rcx, qword [rsp + 0x320]
call fcn.140083100
mov dword [rsp + 0xa8], eax
mov r9d, 8
xor r8d, r8d
mov edx, dword [rsp + 0xa8]
lea rcx, [rsp + 0x2d0]
call fcn.1400981a0
mov dword [rsp + 0x20], 0x40800
lea r9, [rsp + 0x260]
lea r8, [rsp + 0x261]
mov edx, dword [rsp + 0xa8]
lea rcx, [rsp + 0x2d0]
call fcn.1400d7230
nop
movzx eax, byte [rsp + 0x261]
test eax, eax
je 0x14008a9a5
mov rax, qword [rsp + 0x30]
movss xmm0, dword [0x1401fd3ac]
comiss xmm0, dword [rax + 0x405c]
jb 0x14008a9a5
mov byte [rsp + 0x261], 0
movzx eax, byte [rsp + 0x261]
test eax, eax
jne 0x14008a9bd
movzx eax, byte [rsp + 0x260]
test eax, eax
je 0x14008a9ee
cmp dword [rsp + 0x40], 0
jne 0x14008a9d1
mov dword [rsp + 0xac], 4
jmp 0x14008a9dc
mov dword [rsp + 0xac], 3
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0xac]
mov dword [rax + 0x4ee8], ecx
movzx eax, byte [rsp + 0x260]
test eax, eax
je 0x14008aae1
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x30]
movzx eax, byte [rcx + rax + 0x3865]
test eax, eax
je 0x14008aae1
cmp dword [rsp + 0x38], 1
je 0x14008aa2e
cmp dword [rsp + 0x38], 3
jne 0x14008aad6
mov r8, qword [rsp + 0x328]
mov rdx, qword [rsp + 0x320]
lea rcx, [rsp + 0x190]
call fcn.140089320
mov qword [rsp + 0x140], rax
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
mov rcx, qword [rsp + 0x140]
call fcn.140077a00
movss xmm0, dword [rax]
movss dword [rsp + 0xf0], xmm0
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
lea rcx, [rsp + 0x268]
call fcn.140077a00
movss xmm0, dword [rsp + 0xf0]
movss dword [rax], xmm0
mov eax, dword [rsp + 0x40]
mov ecx, 1
mov dword [rsp + 0xf4], ecx
movzx ecx, al
mov eax, dword [rsp + 0xf4]
shl eax, cl
mov ecx, dword [rsp + 0x68]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
mov byte [rsp + 0x260], 0
movzx eax, byte [rsp + 0x260]
mov byte [rsp + 0x261], al
call fcn.140083750
nop
jmp 0x14008b0a3
movzx eax, byte [rsp + 0x260]
test eax, eax
je 0x14008b0a3
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4020], 0
je 0x14008ab42
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x3f58]
cmp dword [rax + 0x4034], ecx
jne 0x14008ab42
xor r8d, r8d
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x4020]
mov rcx, qword [rsp + 0x320]
call fcn.140091f60
movzx eax, al
test eax, eax
je 0x14008ab42
mov byte [rsp + 0x45], 1
jmp 0x14008ab47
mov byte [rsp + 0x45], 0
movzx eax, byte [rsp + 0x45]
mov byte [rsp + 0x4c], al
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4070]
test eax, eax
jne 0x14008ab69
movzx eax, byte [rsp + 0x4c]
test eax, eax
je 0x14008ab93
mov rax, qword [rsp + 0x30]
lea rcx, [rsp + 0x2d0]
lea rdi, [rax + 0x5e84]
mov rsi, rcx
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x5e94], 0
mov rax, qword [rsp + 0x320]
mov eax, dword [rax + 0x14]
and eax, 0x1000000
test eax, eax
je 0x14008abd8
mov rax, qword [rsp + 0x30]
add rax, 0x5e84
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x2d0]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14008abd8
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x5e94], 1
mov rax, qword [rsp + 0x320]
add rax, 0x30
mov qword [rsp + 0x148], rax
mov rcx, qword [rsp + 0xd0]
add rcx, 0x10
mov rdx, qword [rsp + 0xd0]
add rdx, 8
mov r8, rcx
lea rcx, [rsp + 0x198]
call fcn.140078590
mov rcx, qword [rsp + 0x148]
mov r8, rcx
mov rdx, rax
lea rcx, [rsp + 0x1a0]
call fcn.140077e30
mov rcx, qword [rsp + 0x320]
add rcx, 0x28
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x2e8]
call fcn.140077d90
nop
mov rax, qword [rsp + 0x30]
add rax, 0xe8
mov qword [rsp + 0x158], rax
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
lea rcx, [rsp + 0x2e8]
call fcn.140077a20
movss dword [rsp + 0xd8], xmm0
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
mov rcx, qword [rsp + 0x158]
call fcn.140077a00
movss xmm0, dword [rsp + 0xd8]
addss xmm0, dword [rax]
movss dword [rsp + 0xb0], xmm0
mov rax, qword [rsp + 0x30]
add rax, 0xe40
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x30]
add rax, 0x407c
mov qword [rsp + 0x160], rax
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.140077a00
mov qword [rsp + 0x128], rax
movsxd rcx, dword [rsp + 0x40]
mov rdx, rcx
mov rcx, qword [rsp + 0x168]
call fcn.140077a00
movss xmm0, dword [rax]
mov rax, qword [rsp + 0x128]
subss xmm0, dword [rax]
addss xmm0, dword [0x1401fd5d8]
movss dword [rsp + 0xb4], xmm0
mov rax, qword [rsp + 0x320]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x270], rax
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
lea rcx, [rsp + 0x270]
call fcn.140077a00
movss xmm0, dword [rsp + 0xb4]
movss dword [rax], xmm0
mov byte [rsp + 0x46], 0
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x5e94]
test eax, eax
je 0x14008ae5d
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
lea rcx, [rsp + 0x270]
call fcn.140077a00
movss xmm0, dword [rsp + 0xb0]
movss dword [rax], xmm0
mov rax, qword [rsp + 0x30]
add rax, 0xe8
mov qword [rsp + 0x138], rax
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
mov rcx, qword [rsp + 0x138]
call fcn.140077a00
movss xmm0, dword [rax]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008add0
je 0x14008ae58
mov rax, qword [rsp + 0x30]
add rax, 0xe8
mov qword [rsp + 0x130], rax
movsxd rax, dword [rsp + 0x40]
mov rdx, rax
mov rcx, qword [rsp + 0x130]
call fcn.140077a00
movss xmm0, dword [rax]
comiss xmm0, dword [0x1401fd374]
jbe 0x14008ae12
mov dword [rsp + 0xbc], 1
jmp 0x14008ae1d
mov dword [rsp + 0xbc], 0
movss xmm0, dword [rsp + 0xb0]
comiss xmm0, dword [rsp + 0xb4]
jbe 0x14008ae3d
mov dword [rsp + 0xb8], 1
jmp 0x14008ae48
mov dword [rsp + 0xb8], 0
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0xbc], eax
jne 0x14008ae5d
mov byte [rsp + 0x46], 1
cmp dword [rsp + 0x38], 3
je 0x14008ae87
cmp dword [rsp + 0x38], 2
jne 0x14008ae74
movzx eax, byte [rsp + 0x3c]
test eax, eax
jne 0x14008ae87
movss xmm0, dword [0x1401fd770]
movss dword [rsp + 0xc0], xmm0
jmp 0x14008ae99
movss xmm0, dword [rsp + 0x28c]
movss dword [rsp + 0xc0], xmm0
cmp dword [rsp + 0x38], 1
jne 0x14008aeb4
movss xmm0, dword [rsp + 0x288]
movss dword [rsp + 0xc4], xmm0
jmp 0x14008aec5
movss xmm0, dword [0x1401fd770]
movss dword [rsp + 0xc4], xmm0
movss xmm2, dword [rsp + 0xc0]
movss xmm1, dword [rsp + 0xc4]
lea rcx, [rsp + 0x2f0]
call fcn.1400133f0
cmp dword [rsp + 0x38], 2
jne 0x14008aeff
movss xmm0, dword [rsp + 0x294]
movss dword [rsp + 0xc8], xmm0
jmp 0x14008af10
movss xmm0, dword [0x1401fd704]
movss dword [rsp + 0xc8], xmm0
cmp dword [rsp + 0x38], 0
jne 0x14008af28
movss xmm0, dword [rsp + 0x290]
movss dword [rsp + 0x6c], xmm0
jmp 0x14008af36
movss xmm0, dword [0x1401fd704]
movss dword [rsp + 0x6c], xmm0
movss xmm2, dword [rsp + 0xc8]
movss xmm1, dword [rsp + 0x6c]
lea rcx, [rsp + 0x258]
call fcn.1400133f0
nop
mov r9, qword [rsp + 0x258]
lea r8, [rsp + 0x2f0]
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x1a8]
call fcn.1400786d0
mov rax, qword [rax]
mov qword [rsp + 0x270], rax
mov eax, dword [rsp + 0x50]
and eax, 0x1000000
test eax, eax
je 0x14008b041
mov eax, dword [rsp + 0x50]
and eax, 0x8800
test eax, eax
je 0x14008afac
mov eax, dword [rsp + 0x50]
and eax, 8
test eax, eax
je 0x14008aff1
mov rax, qword [rsp + 0x320]
mov rax, qword [rax + 0x378]
mov rcx, qword [rsp + 0x320]
mov rcx, qword [rcx + 0x378]
movss xmm2, dword [rax + 0x220]
movss xmm1, dword [rcx + 0x218]
movss xmm0, dword [rsp + 0x270]
call fcn.1400a7f00
movss dword [rsp + 0x270], xmm0
mov eax, dword [rsp + 0x50]
and eax, 8
test eax, eax
je 0x14008b041
mov rax, qword [rsp + 0x320]
mov rax, qword [rax + 0x378]
mov rcx, qword [rsp + 0x320]
mov rcx, qword [rcx + 0x378]
movss xmm2, dword [rax + 0x224]
movss xmm1, dword [rcx + 0x21c]
movss xmm0, dword [rsp + 0x274]
call fcn.1400a7f00
movss dword [rsp + 0x274], xmm0
movzx eax, byte [rsp + 0x46]
test eax, eax
jne 0x14008b0a3
mov rax, qword [rsp + 0xd0]
add rax, 0x10
mov rcx, qword [rsp + 0xd0]
add rcx, 8
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x1b0]
call fcn.140078590
lea rcx, [rsp + 0x268]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x278]
mov r8, rax
lea rdx, [rsp + 0x270]
mov rcx, qword [rsp + 0x320]
call fcn.140089bf0
nop
movzx eax, byte [rsp + 0x261]
test eax, eax
je 0x14008b0bd
mov rax, qword [rsp + 0x330]
mov ecx, dword [rsp + 0x38]
mov dword [rax], ecx
movzx eax, byte [rsp + 0x260]
test eax, eax
je 0x14008b0d7
mov rax, qword [rsp + 0x338]
mov ecx, dword [rsp + 0x38]
mov dword [rax], ecx
jmp 0x14008a858
call fcn.140092f10
mov rax, qword [rsp + 0x320]
mov dword [rax + 0x168], 0
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4d10], 0
je 0x14008b3e6
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4d10]
mov rcx, qword [rsp + 0x320]
cmp qword [rax + 0x388], rcx
jne 0x14008b3e6
lea rcx, [rsp + 0x280]
call fcn.1400779d0
nop
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b64], 2
jne 0x14008b184
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0xe5d]
test eax, eax
je 0x14008b184
mov dword [rsp + 0x20], 0x204
mov r9d, 0x203
mov r8d, 0x202
mov edx, 0x201
lea rcx, [rsp + 0x1b8]
call fcn.1400935e0
mov rax, qword [rax]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b64], 3
jne 0x14008b1c3
mov dword [rsp + 0x20], 0x280
mov r9d, 0x27f
mov r8d, 0x27e
mov edx, 0x27d
lea rcx, [rsp + 0x1c0]
call fcn.1400935e0
mov rax, qword [rax]
mov qword [rsp + 0x280], rax
movss xmm0, dword [rsp + 0x280]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008b1ef
jne 0x14008b1ef
movss xmm0, dword [rsp + 0x284]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008b1ef
je 0x14008b3e6
movss xmm0, dword [0x1401fd6c0]
movss dword [rsp + 0x118], xmm0
mov rax, qword [rsp + 0x30]
movss xmm0, dword [0x1401fd6c0]
mulss xmm0, dword [rax + 0x18]
movss dword [rsp + 0xdc], xmm0
mov rax, qword [rsp + 0x30]
movss xmm1, dword [rax + 0x54]
mov rax, qword [rsp + 0x30]
movss xmm0, dword [rax + 0x50]
call fcn.1400a7d90
movss xmm1, dword [rsp + 0xdc]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xe0], xmm0
movss xmm2, dword [rsp + 0xe0]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1c8]
call fcn.140077cf0
mov rcx, qword [rsp + 0x30]
add rcx, 0x4d40
mov rdx, rax
call fcn.140077ed0
nop
mov rax, qword [rsp + 0x320]
add rax, 0x30
mov qword [rsp + 0x150], rax
mov rcx, qword [rsp + 0x320]
add rcx, 0x28
mov r8, rcx
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x1d0]
call fcn.140077de0
mov rcx, qword [rsp + 0x150]
mov r8, rcx
mov rdx, rax
lea rcx, [rsp + 0x1f0]
call fcn.140077de0
mov rcx, qword [rsp + 0x30]
add rcx, 0x4d40
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x1d8]
call fcn.140078630
mov rax, qword [rax]
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 0x4d40], rax
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4d30], 0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b7b], 1
movss xmm1, dword [0x1401fd4d8]
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.1400801d0
mov ecx, 4
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x348]
mov dword [rdx + rcx], eax
mov rax, qword [rsp + 0x30]
add rax, 0x4d40
mov rdx, rax
lea rcx, [rsp + 0x2a8]
call fcn.140078910
nop
movss xmm0, dword [rsp + 0x2a8]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008b383
jne 0x14008b383
movss xmm0, dword [rsp + 0x2ac]
ucomiss xmm0, dword [0x1401fd374]
jp 0x14008b383
je 0x14008b3e6
mov rax, qword [rsp + 0x320]
add rax, 0x38
lea r8, [rsp + 0x2a8]
mov rdx, rax
lea rcx, [rsp + 0x1e0]
call fcn.140077d90
mov r8, rax
mov rdx, qword [rsp + 0x320]
lea rcx, [rsp + 0x1e8]
call fcn.140089320
mov rax, qword [rax]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x30]
add rax, 0x4d40
lea rdx, [rsp + 0x2a8]
mov rcx, rax
call fcn.140077f20
nop
mov rax, qword [rsp + 0x320]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x320]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x2c8], rax
movss xmm0, dword [rsp + 0x268]
ucomiss xmm0, dword [0x1401fd704]
jp 0x14008b422
je 0x14008b480
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rax + 0x30]
ucomiss xmm0, dword [rsp + 0x268]
jp 0x14008b454
jne 0x14008b454
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rax + 0x38]
ucomiss xmm0, dword [rsp + 0x268]
jp 0x14008b454
je 0x14008b480
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x268]
movss dword [rax + 0x38], xmm0
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x268]
movss dword [rax + 0x30], xmm0
movss xmm0, dword [rsp + 0x26c]
ucomiss xmm0, dword [0x1401fd704]
jp 0x14008b494
je 0x14008b4f2
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rax + 0x34]
ucomiss xmm0, dword [rsp + 0x26c]
jp 0x14008b4c6
jne 0x14008b4c6
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rax + 0x3c]
ucomiss xmm0, dword [rsp + 0x26c]
jp 0x14008b4c6
je 0x14008b4f2
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x26c]
movss dword [rax + 0x3c], xmm0
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x26c]
movss dword [rax + 0x34], xmm0
movss xmm0, dword [rsp + 0x278]
ucomiss xmm0, dword [0x1401fd704]
jp 0x14008b506
je 0x14008b543
movss xmm0, dword [rsp + 0x278]
call fcn.1400788f0
mov rax, qword [rsp + 0x320]
movss xmm1, dword [rax + 0x28]
ucomiss xmm1, xmm0
jp 0x14008b528
je 0x14008b543
movss xmm0, dword [rsp + 0x278]
call fcn.1400788f0
mov rax, qword [rsp + 0x320]
movss dword [rax + 0x28], xmm0
movss xmm0, dword [rsp + 0x27c]
ucomiss xmm0, dword [0x1401fd704]
jp 0x14008b557
je 0x14008b594
movss xmm0, dword [rsp + 0x27c]
call fcn.1400788f0
mov rax, qword [rsp + 0x320]
movss xmm1, dword [rax + 0x2c]
ucomiss xmm1, xmm0
jp 0x14008b579
je 0x14008b594
movss xmm0, dword [rsp + 0x27c]
call fcn.1400788f0
mov rax, qword [rsp + 0x320]
movss dword [rax + 0x2c], xmm0
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x2c0]
ucomiss xmm0, dword [rax + 0x28]
jp 0x14008b5f8
jne 0x14008b5f8
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x2c4]
ucomiss xmm0, dword [rax + 0x2c]
jp 0x14008b5f8
jne 0x14008b5f8
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x2c8]
ucomiss xmm0, dword [rax + 0x38]
jp 0x14008b5f8
jne 0x14008b5f8
mov rax, qword [rsp + 0x320]
movss xmm0, dword [rsp + 0x2cc]
ucomiss xmm0, dword [rax + 0x3c]
jp 0x14008b5f8
je 0x14008b606
mov rcx, qword [rsp + 0x320]
call fcn.1400a36d0
nop
mov rax, qword [rsp + 0x338]
cmp dword [rax], 0xffffffff
je 0x14008b65d
movss xmm0, dword [0x1401fd5d8]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x64]
mov rax, qword [rsp + 0x338]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x320]
lea rcx, [rsp + 0x240]
call fcn.140089d40
mov rcx, qword [rsp + 0x30]
lea rdi, [rcx + 0x5e84]
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x2f8]
xor rcx, rsp
call fcn.140165580
add rsp, 0x308
pop rdi
pop rsi
ret