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

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1b0
mov qword [rsp + 0x168], 0xfffffffffffffffe
mov ebx, r8d
mov r14d, edx
mov r15, rcx
mov dword [rsp + 0x20], 1
xor esi, esi
lea rax, [r15 + 0x1f0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x30], 0
mov rcx, qword [r15 + 0x208]
mov rax, qword [rax + 8]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], rax
mov r9d, 0x1388
xor r8d, r8d
lea rdx, [rsp + 0x120]
lea ecx, [r8 + 2]
call qword [0x1400996f8]
mov r11d, eax
test eax, eax
je 0x14001453a
cmp eax, 0x80
je 0x14001453a
cmp eax, 0x102
je 0x14001453a
lea ecx, [rax - 1]
cmp ecx, 0x1f
ja 0x14001392d
add r11d, 0x2000
jmp 0x140013942
add eax, 0xffffff7f
cmp eax, 0x1f
ja 0x14001453a
add r11d, 0x1f80
cmp r11d, 0x2001
jne 0x14001453a
mov r13b, 1
mov byte [rsp + 0x30], r13b
test ebx, ebx
jne 0x140014073
test r14d, r14d
jne 0x140013b84
mov rax, qword [r15 + 0xa8]
mov rcx, qword [rax]
mov qword [rsp + 0x108], rcx
mov rax, qword [r15 + 0x80]
mov qword [rsp + 0x100], rax
movaps xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0xb0], xmm0
mov rdi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xb0]
nop word [rax + rax]
mov r12, qword [r15 + 0xa8]
test rbx, rbx
je 0x1400139c5
cmp rbx, qword [r15 + 0x80]
je 0x1400139ca
call fcn.140076b44
cmp rdi, r12
je 0x140013a14
test rbx, rbx
jne 0x1400139de
call fcn.140076b44
mov r11, rsi
jmp 0x1400139e1
mov r11, qword [rbx]
cmp rdi, qword [r11 + 0x28]
jne 0x1400139ec
call fcn.140076b44
cmp dword [rdi + 0x14], 7
je 0x140013a14
test rbx, rbx
jne 0x140013a01
call fcn.140076b44
mov r11, rsi
jmp 0x140013a04
mov r11, qword [rbx]
cmp rdi, qword [r11 + 0x28]
jne 0x140013a0f
call fcn.140076b44
mov rdi, qword [rdi]
jmp 0x1400139b0
mov r12, qword [r15 + 0xa8]
test rbx, rbx
je 0x140013a29
cmp rbx, qword [r15 + 0x80]
je 0x140013a2e
call fcn.140076b44
cmp rdi, r12
jne 0x140014469
mov rax, qword [r15 + 0xa8]
mov rcx, qword [rax]
mov qword [rsp + 0x148], rcx
mov rax, qword [r15 + 0x80]
mov qword [rsp + 0x140], rax
movaps xmm0, xmmword [rsp + 0x140]
movdqa xmmword [rsp + 0xb0], xmm0
mov rbx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xb0]
nop dword [rax]
mov r12, qword [r15 + 0xa8]
test rdi, rdi
je 0x140013a95
cmp rdi, qword [r15 + 0x80]
je 0x140013a9a
call fcn.140076b44
cmp rbx, r12
je 0x140013b44
test rdi, rdi
jne 0x140013ab2
call fcn.140076b44
mov r11, rsi
jmp 0x140013ab5
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x140013ac0
call fcn.140076b44
cmp dword [rbx + 0x14], 6
jne 0x140013b1f
test rdi, rdi
jne 0x140013ad2
call fcn.140076b44
jmp 0x140013ad5
mov rsi, qword [rdi]
cmp rbx, qword [rsi + 0x28]
jne 0x140013ae0
call fcn.140076b44
movzx eax, word [rbx + 0x124]
mov word [rsp + 0x88], ax
movzx eax, word [rbx + 0x126]
mov word [rsp + 0x8a], ax
mov eax, dword [rbx + 0x128]
mov dword [rsp + 0x8c], eax
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x88]
call fcn.140076800
test rdi, rdi
jne 0x140013b2e
call fcn.140076b44
mov r11, rsi
jmp 0x140013b31
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x140013b3c
call fcn.140076b44
mov rbx, qword [rbx]
jmp 0x140013a80
mov r12, qword [r15 + 0xa8]
test rdi, rdi
je 0x140013b59
cmp rdi, qword [r15 + 0x80]
je 0x140013b5e
call fcn.140076b44
cmp rbx, r12
jne 0x140014446
cmp byte [rsp + 0x30], 0
je 0x14001451f
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
jmp 0x14001451f
lea eax, [r14 + 0x7fffffff]
cmp eax, 0xffffffd
ja 0x140013cf4
lea r8, [rsp + 0x1f8]
lea rdx, [rsp + 0x178]
lea rcx, [r15 + 0x130]
call fcn.140009700
lea rdx, [rsp + 0xc8]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
mov r12, qword [r15 + 0x160]
mov rdi, qword [rsp + 0xc8]
test rdi, rdi
je 0x140013be5
cmp rdi, qword [r15 + 0x130]
je 0x140013bea
call fcn.140076b44
mov rbx, qword [rsp + 0xd0]
cmp rbx, r12
jne 0x140013c3f
mov ecx, 8
call fcn.14004fc48
test rax, rax
je 0x140013c20
mov ecx, 0xe
mov word [rax], cx
mov ecx, 0x18f4
mov word [rax + 2], cx
mov dword [rax + 4], 0x54c
jmp 0x140013c23
mov rax, rsi
mov qword [rsp + 0xc0], rax
lea rdx, [0x1400cb170]
lea rcx, [rsp + 0xc0]
call fcn.140076800
test rdi, rdi
jne 0x140013c4e
call fcn.140076b44
mov r11, rsi
jmp 0x140013c51
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013c5c
call fcn.140076b44
cmp dword [rbx + 0x24], 0
jne 0x140013c74
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
jmp 0x14001451f
test rdi, rdi
jne 0x140013c83
call fcn.140076b44
mov r11, rsi
jmp 0x140013c86
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013c91
call fcn.140076b44
cmp dword [rbx + 0x24], 7
je 0x14001446e
test rdi, rdi
jne 0x140013ca7
call fcn.140076b44
jmp 0x140013caa
mov rsi, qword [rdi]
cmp rbx, qword [rsi + 0x30]
jne 0x140013cb5
call fcn.140076b44
movzx eax, word [rbx + 0x134]
mov word [rsp + 0x90], ax
movzx eax, word [rbx + 0x136]
mov word [rsp + 0x92], ax
mov eax, dword [rbx + 0x138]
mov dword [rsp + 0x94], eax
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x90]
call fcn.140076800
lea eax, [r14 - 1]
cmp eax, 0xffffffd
ja 0x140013d95
lea r8, [rsp + 0x1f8]
lea rdx, [rsp + 0x188]
lea rcx, [r15 + 0xf0]
call fcn.140009700
lea rdx, [rsp + 0xa0]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
mov r12, qword [r15 + 0x120]
mov rdi, qword [rsp + 0xa0]
test rdi, rdi
je 0x140013d52
cmp rdi, qword [r15 + 0xf0]
je 0x140013d57
call fcn.140076b44
mov rbx, qword [rsp + 0xa8]
cmp rbx, r12
jne 0x140013e35
mov ecx, 0xe
mov word [rsp + 0x78], cx
mov eax, 0x1914
mov word [rsp + 0x7a], ax
mov dword [rsp + 0x7c], 0x54b
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x78]
call fcn.140076800
lea eax, [r14 + 0x3fffffff]
cmp eax, 0xffffffd
ja 0x140014046
lea r8, [rsp + 0x1f8]
lea rdx, [rsp + 0x198]
lea rcx, [r15 + 0x170]
call fcn.140009700
lea rdx, [rsp + 0xa0]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
mov r12, qword [r15 + 0x1a0]
mov rdi, qword [rsp + 0xa0]
test rdi, rdi
je 0x140013df6
cmp rdi, qword [r15 + 0x170]
je 0x140013dfb
call fcn.140076b44
mov rbx, qword [rsp + 0xa8]
cmp rbx, r12
jne 0x140013e35
mov ecx, 0xe
mov word [rsp + 0x50], cx
mov eax, 0x191c
mov word [rsp + 0x52], ax
mov dword [rsp + 0x54], 0x54c
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x50]
call fcn.140076800
test rdi, rdi
jne 0x140013e44
call fcn.140076b44
mov r11, rsi
jmp 0x140013e47
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013e52
call fcn.140076b44
cmp dword [rbx + 0x24], 0
jne 0x140013e6a
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
jmp 0x14001451f
test rdi, rdi
jne 0x140013e79
call fcn.140076b44
mov r11, rsi
jmp 0x140013e7c
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013e87
call fcn.140076b44
cmp dword [rbx + 0x24], 6
je 0x140013fed
test rdi, rdi
jne 0x140013ea0
call fcn.140076b44
mov r11, rsi
jmp 0x140013ea3
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013eae
call fcn.140076b44
cmp dword [rbx + 0x24], 8
je 0x140013fed
cmp dword [rsp + 0x208], 0
jne 0x140013f68
test rdi, rdi
jne 0x140013ed5
call fcn.140076b44
mov r11, rsi
jmp 0x140013ed8
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013ee3
call fcn.140076b44
cmp dword [rbx + 0x24], 7
je 0x140013f68
test rdi, rdi
jne 0x140013ef8
call fcn.140076b44
mov r11, rsi
jmp 0x140013efb
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013f06
call fcn.140076b44
cmp dword [rbx + 0x138], 0
je 0x140013f68
test rdi, rdi
jne 0x140013f1b
call fcn.140076b44
jmp 0x140013f1e
mov rsi, qword [rdi]
cmp rbx, qword [rsi + 0x30]
jne 0x140013f29
call fcn.140076b44
movzx eax, word [rbx + 0x134]
mov word [rsp + 0x80], ax
movzx eax, word [rbx + 0x136]
mov word [rsp + 0x82], ax
mov eax, dword [rbx + 0x138]
mov dword [rsp + 0x84], eax
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x80]
call fcn.140076800
cmp dword [rsp + 0x210], 0
jne 0x14001446e
test rdi, rdi
jne 0x140013f85
call fcn.140076b44
mov r11, rsi
jmp 0x140013f88
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x30]
jne 0x140013f93
call fcn.140076b44
cmp dword [rbx + 0x138], 0
je 0x14001446e
test rdi, rdi
jne 0x140013fac
call fcn.140076b44
jmp 0x140013faf
mov rsi, qword [rdi]
cmp rbx, qword [rsi + 0x30]
jne 0x140013fba
call fcn.140076b44
movzx eax, word [rbx + 0x134]
mov word [rsp + 0x60], ax
movzx eax, word [rbx + 0x136]
mov word [rsp + 0x62], ax
mov eax, dword [rbx + 0x138]
mov dword [rsp + 0x64], eax
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x60]
call fcn.140076800
test rdi, rdi
jne 0x140013ff9
call fcn.140076b44
jmp 0x140013ffc
mov rsi, qword [rdi]
cmp rbx, qword [rsi + 0x30]
jne 0x140014007
call fcn.140076b44
movzx eax, word [rbx + 0x134]
mov word [rsp + 0x98], ax
movzx eax, word [rbx + 0x136]
mov word [rsp + 0x9a], ax
mov eax, dword [rbx + 0x138]
mov dword [rsp + 0x9c], eax
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x98]
call fcn.140076800
mov ecx, 0xe
mov word [rsp + 0x70], cx
mov eax, 0x1921
mov word [rsp + 0x72], ax
mov dword [rsp + 0x74], 0x57
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x70]
call fcn.140076800
test r14d, r14d
je 0x140014094
lea eax, [r14 + 0x7fffffff]
cmp eax, 0xffffffd
jbe 0x140014094
lea eax, [r14 + 0x3fffffff]
cmp eax, 0xffffffd
ja 0x1400140a8
mov edx, ebx
mov rcx, r15
call fcn.140009020
mov r14d, eax
mov dword [rsp + 0x1f8], eax
lea rdi, [r15 + 0x1b0]
mov rbx, qword [rdi + 0x30]
mov rax, qword [rbx + 8]
cmp byte [rax + 0x59], 0
jne 0x1400140d1
cmp dword [rax + 0x18], r14d
jae 0x1400140c9
mov rax, qword [rax + 0x10]
jmp 0x1400140b7
mov rbx, rax
mov rax, qword [rax]
jmp 0x1400140b7
mov qword [rsp + 0xf8], rbx
test rdi, rdi
jne 0x1400140e3
call fcn.140076b44
mov rax, qword [rdi]
mov qword [rsp + 0xf0], rax
mov r12, qword [rdi + 0x30]
test rax, rax
je 0x1400140fc
cmp rax, rax
je 0x140014101
call fcn.140076b44
cmp rbx, r12
je 0x140014116
cmp r14d, dword [rbx + 0x18]
jb 0x140014116
lea rcx, [rsp + 0xf0]
jmp 0x140014135
mov rax, qword [rdi + 0x30]
mov qword [rsp + 0x118], rax
mov rax, qword [rdi]
mov qword [rsp + 0x110], rax
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x130]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov rbx, qword [r15 + 0x1e0]
mov r14, qword [rsp + 0x130]
test r14, r14
je 0x140014168
cmp r14, qword [r15 + 0x1b0]
je 0x14001416d
call fcn.140076b44
mov r13, qword [rsp + 0x138]
cmp r13, rbx
jne 0x1400141a7
mov ecx, 0xe
mov word [rsp + 0x40], cx
mov eax, 0x1958
mov word [rsp + 0x42], ax
mov dword [rsp + 0x44], 0x54a
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x40]
call fcn.140076800
test r14, r14
jne 0x1400141b6
call fcn.140076b44
mov r11, rsi
jmp 0x1400141b9
mov r11, qword [r14]
cmp r13, qword [r11 + 0x30]
jne 0x1400141c4
call fcn.140076b44
mov rax, qword [r13 + 0x48]
mov rcx, qword [rax]
mov qword [rsp + 0x158], rcx
mov rax, qword [r13 + 0x20]
mov qword [rsp + 0x150], rax
movaps xmm0, xmmword [rsp + 0x150]
movdqa xmmword [rsp + 0xe0], xmm0
mov rbx, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0xe0]
test r14, r14
jne 0x14001420f
call fcn.140076b44
mov r11, rsi
jmp 0x140014212
mov r11, qword [r14]
cmp r13, qword [r11 + 0x30]
jne 0x14001421d
call fcn.140076b44
mov r12, qword [r13 + 0x48]
test rdi, rdi
je 0x14001422c
cmp rdi, qword [r13 + 0x20]
je 0x140014231
call fcn.140076b44
cmp rbx, r12
je 0x140014284
test rdi, rdi
jne 0x140014245
call fcn.140076b44
mov r11, rsi
jmp 0x140014248
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x140014253
call fcn.140076b44
mov eax, dword [rsp + 0x200]
cmp dword [rbx + 0x10], eax
je 0x140014284
test rdi, rdi
jne 0x14001426e
call fcn.140076b44
mov r11, rsi
jmp 0x140014271
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x14001427c
call fcn.140076b44
mov rbx, qword [rbx]
jmp 0x140014200
test r14, r14
jne 0x140014293
call fcn.140076b44
mov r11, rsi
jmp 0x140014296
mov r11, qword [r14]
cmp r13, qword [r11 + 0x30]
jne 0x1400142a1
call fcn.140076b44
mov r12, qword [r13 + 0x48]
test rdi, rdi
je 0x1400142b0
cmp rdi, qword [r13 + 0x20]
je 0x1400142b5
call fcn.140076b44
cmp rbx, r12
jne 0x1400142e7
mov ecx, 0xe
mov word [rsp + 0x48], cx
mov eax, 0x1967
mov word [rsp + 0x4a], ax
mov dword [rsp + 0x4c], 0x54a
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x48]
call fcn.140076800
mov r14d, dword [rsp + 0x1f8]
test r14d, r14d
je 0x140014350
lea eax, [r14 + 0x7fffffff]
cmp eax, 0xffffffd
jbe 0x140014350
lea eax, [r14 + 0x3fffffff]
cmp eax, 0xffffffd
jbe 0x140014350
test rdi, rdi
jne 0x14001431f
call fcn.140076b44
mov r11, rsi
jmp 0x140014322
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x14001432d
call fcn.140076b44
cmp dword [rbx + 0x18], 6
jne 0x14001439e
cmp byte [rsp + 0x30], 0
je 0x14001451f
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
jmp 0x14001451f
test rdi, rdi
jne 0x14001435f
call fcn.140076b44
mov r11, rsi
jmp 0x140014362
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x14001436d
call fcn.140076b44
cmp dword [rbx + 0x18], 4
je 0x14001450b
test rdi, rdi
jne 0x140014386
call fcn.140076b44
mov r11, rsi
jmp 0x140014389
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x140014394
call fcn.140076b44
cmp dword [rbx + 0x18], 9
je 0x14001450b
cmp dword [rsp + 0x208], 0
jne 0x140014464
test rdi, rdi
jne 0x1400143bb
call fcn.140076b44
mov r11, rsi
jmp 0x1400143be
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x1400143c9
call fcn.140076b44
cmp dword [rbx + 0x18], 0xc
je 0x14001445d
test rdi, rdi
jne 0x1400143e2
call fcn.140076b44
mov r11, rsi
jmp 0x1400143e5
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x28]
jne 0x1400143f0
call fcn.140076b44
cmp dword [rbx + 0x1ac], 0
je 0x140014456
test rdi, rdi
jne 0x140014405
call fcn.140076b44
jmp 0x140014408
mov rsi, qword [rdi]
cmp rbx, qword [rsi + 0x28]
jne 0x140014413
call fcn.140076b44
movzx eax, word [rbx + 0x1a8]
mov word [rsp + 0x58], ax
movzx eax, word [rbx + 0x1aa]
mov word [rsp + 0x5a], ax
mov eax, dword [rbx + 0x1ac]
mov dword [rsp + 0x5c], eax
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x58]
call fcn.140076800
movzx r13d, byte [rsp + 0x30]
mov r14d, dword [rsp + 0x1f8]
jmp 0x140014469
mov r13b, byte [rsp + 0x30]
jmp 0x140014469
mov r13b, byte [rsp + 0x30]
jmp 0x140014469
mov r13b, byte [rsp + 0x30]
test r13b, r13b
je 0x140014483
xor r13b, r13b
mov byte [rsp + 0x30], r13b
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
mov eax, dword [rsp + 0x210]
test eax, eax
jne 0x1400144bb
mov ecx, 0xe
mov word [rsp + 0x68], cx
mov eax, 0x198b
mov word [rsp + 0x6a], ax
mov dword [rsp + 0x6c], 0x3e5
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x68]
call fcn.140076800
mov ecx, 0x1f4
cmp eax, 0xffffffff
je 0x1400144d3
cmp eax, ecx
cmovb ecx, eax
sub eax, ecx
mov dword [rsp + 0x210], eax
call qword [0x1400996c0]
cmp dword [r15 + 0x28], 0
jne 0x1400144e9
mov rcx, r15
call fcn.1400135f0
nop
test r13b, r13b
mov ebx, dword [rsp + 0x200]
je 0x1400138b4
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
jmp 0x1400138b4
cmp byte [rsp + 0x30], 0
je 0x14001451f
mov rcx, qword [r15 + 0x1f8]
call qword [0x1400996d0]
xor edx, edx
mov ecx, dword [r15 + 0x10]
call qword [0x140099708]
xor edx, edx
mov ecx, dword [r15 + 0x20]
call qword [0x140099708]
nop
jmp 0x140014568
mov ecx, 0xe
mov word [rsp + 0x38], cx
mov eax, 0x18bf
mov word [rsp + 0x3a], ax
mov dword [rsp + 0x3c], 0x5b4
lea rdx, [0x1400cb1f8]
lea rcx, [rsp + 0x38]
call fcn.140076800
nop
mov eax, dword [rsp + 0x20]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret