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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
movaps xmmword [rsp + 0x140], xmm8
movaps xmmword [rsp + 0x130], xmm7
movdqa xmmword [rsp + 0x120], xmm6
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x1401af6a8]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov rcx, qword [rcx]
call fcn.1400b7110
or byte [rdi + 0x10], 8
mov qword [rsp + 0x70], rdi
mov byte [rdi + 0x98], al
mov rcx, qword [rsi]
call fcn.1400b6070
mov qword [rsp + 0x78], rax
test rax, rax
mov qword [rsp + 0x98], rsi
je 0x1400b51d3
mov rax, qword [rsp + 0x70]
add rax, 0x18
mov qword [rsp + 0xa0], rax
xorps xmm8, xmm8
lea rdi, [rsp + 0xe0]
lea r12, [0x1401b2668]
movaps xmm7, xmmword [section..rdata]
mov rax, qword [rsi]
mov qword [rsp + 0x80], rax
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x1400b4973
movsxd rcx, dword [rbp + 0x20]
mov edx, dword [rax]
cmp ecx, edx
movabs rsi, 0xaaaaaaaaaaaaaaab
jge 0x1400b4982
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov r13, qword [rax + rcx*8 + 8]
jmp 0x1400b49c4
mov edx, dword [rbp + 0x24]
movabs rsi, 0xaaaaaaaaaaaaaaab
jmp 0x1400b4987
cmp edx, dword [rbp + 0x24]
jne 0x1400b49a1
inc edx
mov rcx, qword [rsp + 0xa0]
call fcn.140054090
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rbp + 0x18]
call fcn.1400b045c
mov r13, rax
mov rax, qword [rbp + 0x28]
movsxd rcx, dword [rbp + 0x20]
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov qword [rax + rcx*8 + 8], r13
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.1400b6b50
test rax, rax
mov qword [rsp + 0x88], r13
je 0x1400b4dbd
mov rbp, rax
lea rax, [r13 + 0x30]
mov qword [rsp + 0xa8], rax
mov eax, dword [r13 + 0x10]
test al, 2
jne 0x1400b4a0d
mov rcx, qword [rbp + 0x20]
or eax, 2
mov dword [r13 + 0x10], eax
mov qword [r13 + 0x70], rcx
mov rax, qword [r13 + 0x40]
test rax, rax
je 0x1400b4a2e
movsxd rcx, dword [r13 + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b4a34
lea edx, [rcx + 1]
mov dword [r13 + 0x38], edx
mov r15, qword [rax + rcx*8 + 8]
jmp 0x1400b4a73
mov edx, dword [r13 + 0x3c]
jmp 0x1400b4a3a
cmp edx, dword [r13 + 0x3c]
jne 0x1400b4a4f
inc edx
mov rcx, qword [rsp + 0xa8]
call fcn.140054090
mov rax, qword [r13 + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r13 + 0x30]
call fcn.1400b02e2
mov r15, rax
mov rax, qword [r13 + 0x40]
movsxd rcx, dword [r13 + 0x38]
lea edx, [rcx + 1]
mov dword [r13 + 0x38], edx
mov qword [rax + rcx*8 + 8], r15
or byte [r15 + 0x10], 1
mov rcx, qword [r15 + 0x30]
cmp rcx, r12
je 0x1400b4a8b
mov rdx, rbp
call fcn.140021780
jmp 0x1400b4a97
lea rcx, [r15 + 0x30]
mov rdx, rbp
call fcn.140006860
mov rcx, qword [rbp + 0x28]
mov eax, dword [r15 + 0x10]
mov edx, eax
or edx, 4
mov dword [r15 + 0x10], edx
mov qword [r15 + 0x40], rcx
mov ecx, dword [rbp + 0x48]
mov edx, eax
or edx, 0xc
mov dword [r15 + 0x10], edx
mov dword [r15 + 0x48], ecx
cmp byte [rbp + 0xc0], 0xe0
jne 0x1400b4b22
or eax, 0xe
mov dword [r15 + 0x10], eax
mov rax, qword [r15 + 0x38]
test rax, rax
jne 0x1400b4ae0
xor ecx, ecx
call fcn.1400b02a2
mov qword [r15 + 0x38], rax
mov ecx, dword [rbp + 0xc8]
mov ebx, dword [rax + 0x10]
mov edx, ebx
or edx, 8
mov dword [rax + 0x10], edx
mov dword [rax + 0x30], ecx
mov rcx, qword [rbp + 0x58]
mov edx, ebx
or edx, 9
mov dword [rax + 0x10], edx
mov qword [rax + 0x18], rcx
mov rcx, qword [rbp + 0x60]
mov edx, ebx
or edx, 0xb
mov dword [rax + 0x10], edx
mov qword [rax + 0x20], rcx
mov rcx, qword [rbp + 0x50]
or ebx, 0xf
mov dword [rax + 0x10], ebx
mov qword [rax + 0x28], rcx
mov rax, qword [rbp + 0x38]
cmp rax, qword [rbp + 0x30]
je 0x1400b4d8d
lea rax, [r15 + 0x18]
mov qword [rsp + 0x90], rax
mov r13d, 0x7c
xor r12d, r12d
xor r14d, r14d
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1400b4b69
movsxd rcx, dword [r15 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b4b6f
lea edx, [rcx + 1]
mov dword [r15 + 0x20], edx
mov rax, qword [rax + rcx*8 + 8]
jmp 0x1400b4bab
mov edx, dword [r15 + 0x24]
jmp 0x1400b4b75
cmp edx, dword [r15 + 0x24]
jne 0x1400b4b8a
inc edx
mov rcx, qword [rsp + 0x90]
call fcn.140054090
mov rax, qword [r15 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r15 + 0x18]
call fcn.1400b0274
mov rcx, qword [r15 + 0x28]
movsxd rdx, dword [r15 + 0x20]
lea ebx, [rdx + 1]
mov dword [r15 + 0x20], ebx
mov qword [rcx + rdx*8 + 8], rax
mov r9, rbp
mov r8, qword [rbp + 0x30]
mov rbx, qword [r8 + r13 - 0x7c]
mov edx, dword [rax + 0x10]
mov ecx, edx
or ecx, 1
mov dword [rax + 0x10], ecx
mov qword [rax + 0x38], rbx
mov rcx, qword [r8 + r13 - 0x74]
mov ebp, edx
or ebp, 0x201
mov dword [rax + 0x10], ebp
mov qword [rax + 0x78], rcx
mov rcx, qword [r8 + r13 - 0x6c]
mov edi, edx
or edi, 0x203
mov dword [rax + 0x10], edi
mov qword [rax + 0x40], rcx
mov bl, byte [r8 + r13 - 0xc]
cmp bl, 0x2f
jg 0x1400b4c3f
cmp bl, 0xf0
je 0x1400b4c86
cmp bl, 0x10
mov rbp, r9
je 0x1400b4cf3
cmp bl, 0x20
jne 0x1400b4d3d
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 2
mov rcx, qword [r8 + r13 - 4]
or edx, 0x22b
mov dword [rax + 0x10], edx
mov qword [rax + 0x50], rcx
jmp 0x1400b4d3d
cmp bl, 0x30
je 0x1400b4cca
cmp bl, 0x41
mov rbp, r9
je 0x1400b4d19
cmp bl, 0x51
jne 0x1400b4d3d
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 5
mov rcx, qword [r8 + r13 - 4]
or edx, 0x323
mov dword [rax + 0x10], edx
mov qword [rax + 0x70], rcx
jmp 0x1400b4d3d
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 6
mov ecx, dword [r8 + r13 - 4]
mov esi, edx
or esi, 0x263
mov dword [rax + 0x10], esi
movabs rsi, 0xaaaaaaaaaaaaaaab
mov dword [rax + 0x64], ecx
mov ecx, dword [r8 + r13]
or edx, 0x663
mov dword [rax + 0x10], edx
mov dword [rax + 0x80], ecx
jmp 0x1400b4cee
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 3
mov rcx, qword [r8 + r13 - 4]
or edx, 0x233
mov dword [rax + 0x10], edx
mov qword [rax + 0x58], rcx
mov rbp, r9
jmp 0x1400b4d3d
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 1
mov rcx, qword [r8 + r13 - 4]
or edx, 0x227
mov dword [rax + 0x10], edx
mov qword [rax + 0x48], rcx
jmp 0x1400b4d3d
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 4
mov rcx, qword [r8 + r13 - 4]
or edx, 0x2a3
mov dword [rax + 0x10], edx
mov qword [rax + 0x68], rcx
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
sub rdx, rcx
sar rdx, 3
imul rdx, rsi
cmp r14, rdx
jae 0x1400b4d6d
add rax, 0x20
add rcx, r12
mov rdx, rax
xor r8d, r8d
call fcn.1400b52fc
inc r14
mov rax, qword [rbp + 0x38]
sub rax, qword [rbp + 0x30]
sar rax, 7
sub r13, 0xffffffffffffff80
add r12, 0x18
cmp r14, rax
jb 0x1400b4b48
mov rcx, qword [rsp + 0x80]
call fcn.1400b6bf0
mov rbp, rax
test rax, rax
lea rdi, [rsp + 0xe0]
lea r12, [0x1401b2668]
mov r13, qword [rsp + 0x88]
jne 0x1400b49f6
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.1400b6c80
lea rcx, [rsp + 0xd0]
movups xmmword [rcx], xmm8
mov qword [rsp + 0xc8], rcx
mov rdx, qword [rax]
lea r8, [rax + 8]
lea rsi, [rsp + 0xc8]
mov rcx, rsi
call fcn.1400b5a04
lea r15, [r13 + 0x50]
mov rcx, rsi
mov rdx, r15
mov r8, qword [rsp + 0x70]
call fcn.1400b52fc
movaps xmmword [rsp + 0x100], xmm8
mov qword [rsp + 0x110], 0
lea rcx, str.ptype
call fcn.14014ba90
cmp rax, 0xfffffffffffffff0
jae 0x1400b52ec
mov rbp, rax
cmp rax, 0x17
jae 0x1400b4e5c
lea eax, [rbp + rbp]
mov byte [rsp + 0x100], al
lea rsi, [rsp + 0x101]
test rbp, rbp
jne 0x1400b4e8e
jmp 0x1400b4ea0
mov rbx, rbp
add rbx, 0x10
and rbx, 0xfffffffffffffff0
mov rcx, rbx
call fcn.14012d2c8
mov rsi, rax
mov qword [rsp + 0x110], rax
or rbx, 1
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rbp
mov rcx, rsi
lea rdx, str.ptype
mov r8, rbp
call fcn.1401306b0
mov byte [rsi + rbp], 0
mov rcx, qword [r13 + 0x60]
mov rdx, rdi
lea rbx, [rsp + 0x100]
mov r8, rbx
xor r9d, r9d
call fcn.1400b1530
movdqa xmm6, xmmword [rsp + 0xe0]
mov rsi, qword [rsp + 0xf0]
test byte [rsp + 0x100], 1
je 0x1400b4ee6
mov rcx, qword [rsp + 0x110]
call fcn.14012d304
movq rax, xmm6
test rax, rax
je 0x1400b4f25
mov rax, qword [rax + 0x18]
cmp dword [rax + 0x38], 7
jne 0x1400b4f25
mov eax, dword [rax + 0x30]
or dword [r13 + 0x10], 4
mov dword [r13 + 0x78], eax
movdqa xmmword [rsp + 0xe0], xmm6
mov qword [rsp + 0xf0], rsi
mov rcx, r15
mov rdx, rbx
mov r8, rdi
call fcn.1400b11b0
mov rcx, qword [rsp + 0x80]
lea rdx, [rsp + 0xb0]
mov r8, qword [rsp + 0x78]
call fcn.1400b6f00
mov rsi, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
cmp rsi, r14
je 0x1400b5193
lea rax, [r13 + 0x18]
mov qword [rsp + 0x90], rax
mov rax, qword [r13 + 0x28]
test rax, rax
je 0x1400b4f85
movsxd rcx, dword [r13 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b4f8b
lea edx, [rcx + 1]
mov dword [r13 + 0x20], edx
mov rbx, qword [rax + rcx*8 + 8]
jmp 0x1400b4fca
mov edx, dword [r13 + 0x24]
jmp 0x1400b4f91
cmp edx, dword [r13 + 0x24]
jne 0x1400b4fa6
inc edx
mov rcx, qword [rsp + 0x90]
call fcn.140054090
mov rax, qword [r13 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r13 + 0x18]
call fcn.1400b0160
mov rbx, rax
mov rax, qword [r13 + 0x28]
movsxd rcx, dword [r13 + 0x20]
lea edx, [rcx + 1]
mov dword [r13 + 0x20], edx
mov qword [rax + rcx*8 + 8], rbx
mov rax, qword [rsi + 8]
mov ecx, dword [rbx + 0x10]
mov edx, ecx
or edx, 0x20
mov dword [rbx + 0x10], edx
mov qword [rbx + 0x40], rax
mov rax, qword [rsi + 0x18]
mov qword [rbx + 0x48], rax
lea rdx, [rsi + 0x38]
or ecx, 0x61
mov dword [rbx + 0x10], ecx
mov rcx, qword [rbx + 0x18]
cmp rcx, r12
je 0x1400b4fff
call fcn.140021780
jmp 0x1400b5008
lea rcx, [rbx + 0x18]
call fcn.140006860
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xf0], rax
movaps xmmword [rsp + 0xe0], xmm7
mov r9, qword [rsi + 0x18]
mov r8d, dword [rsi + 0x20]
mov rcx, rdi
lea rdx, str._08X_zx
call fcn.140038b10
or byte [rbx + 0x10], 2
mov rcx, qword [rbx + 0x20]
cmp rcx, r12
je 0x1400b5050
mov rdx, rdi
call fcn.140021780
jmp 0x1400b505c
lea rcx, [rbx + 0x20]
mov rdx, rdi
call fcn.140006860
or byte [rbx + 0x10], 4
lea rdx, [rsi + 0x50]
mov rcx, qword [rbx + 0x28]
cmp rcx, r12
je 0x1400b5074
call fcn.140021780
jmp 0x1400b507d
lea rcx, [rbx + 0x28]
call fcn.140006860
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x110], rax
movaps xmmword [rsp + 0x100], xmm7
movzx eax, byte [rsi + 0x37]
movzx ecx, byte [rsi + 0x36]
movzx edx, byte [rsi + 0x35]
movzx ebp, byte [rsi + 0x34]
movzx edi, byte [rsi + 0x33]
movzx r10d, byte [rsi + 0x32]
movzx r11d, byte [rsi + 0x31]
movzx r12d, byte [rsi + 0x30]
movzx r13d, word [rsi + 0x2e]
movzx r9d, word [rsi + 0x2c]
mov r15d, dword [rsi + 0x24]
mov r8d, dword [rsi + 0x28]
mov dword [rsp + 0x68], r15d
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x48], ebp
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r13d
lea rdi, [rsp + 0x100]
mov rcx, rdi
lea rdx, str._08X_04X_04X_02X_02X_02X_02X_02X_02X_02X_02X_x
call fcn.140038b10
or byte [rbx + 0x10], 8
mov rcx, qword [rbx + 0x30]
lea r12, [0x1401b2668]
cmp rcx, r12
je 0x1400b512e
mov rdx, rdi
call fcn.140021780
jmp 0x1400b513a
lea rcx, [rbx + 0x30]
mov rdx, rdi
call fcn.140006860
mov r13, qword [rsp + 0x88]
mov al, byte [rsi]
or dword [rbx + 0x10], 0x100
xor al, 1
mov byte [rbx + 0x58], al
test byte [rsp + 0x100], 1
lea rdi, [rsp + 0xe0]
je 0x1400b516f
mov rcx, qword [rsp + 0x110]
call fcn.14012d304
test byte [rsp + 0xe0], 1
je 0x1400b5186
mov rcx, qword [rsp + 0xf0]
call fcn.14012d304
add rsi, 0x68
cmp r14, rsi
jne 0x1400b4f64
lea rcx, [rsp + 0xb0]
call fcn.1400b5bc6
mov rdx, qword [rsp + 0xd0]
lea rcx, [rsp + 0xc8]
call fcn.140059ef0
mov rsi, qword [rsp + 0x98]
mov rcx, qword [rsi]
call fcn.1400b6b30
mov qword [rsp + 0x78], rax
test rax, rax
jne 0x1400b4939
lea rdi, [rsp + 0xe0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [section..rdata]
movaps xmmword [rdi], xmm0
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.1400b6d40
mov rsi, qword [rdi]
mov rbx, qword [rdi + 8]
cmp rsi, rbx
mov rbp, qword [rsp + 0x70]
je 0x1400b528e
lea r14, [rbp + 0x30]
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x1400b5233
movsxd rcx, dword [rbp + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b5238
lea edx, [rcx + 1]
mov dword [rbp + 0x38], edx
mov rcx, qword [rax + rcx*8 + 8]
jmp 0x1400b5278
mov edx, dword [rbp + 0x3c]
jmp 0x1400b523d
cmp edx, dword [rbp + 0x3c]
jne 0x1400b5252
inc edx
mov rcx, r14
call fcn.140054090
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rbp + 0x30]
mov rdi, rbp
call fcn.14005437e
mov rcx, rax
mov rax, qword [rbp + 0x40]
movsxd rdx, dword [rbp + 0x38]
lea ebp, [rdx + 1]
mov dword [rdi + 0x38], ebp
mov qword [rax + rdx*8 + 8], rcx
mov rdx, rsi
call fcn.140021780
add rsi, 0x18
cmp rbx, rsi
mov rbp, qword [rsp + 0x70]
jne 0x1400b5213
lea rcx, [rsp + 0xe0]
call fcn.140001dbc
mov rcx, qword [rsp + 0x98]
xor edx, edx
call fcn.1400b5c12
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.14012d670
mov eax, 1
movaps xmm6, xmmword [rsp + 0x120]
movaps xmm7, xmmword [rsp + 0x130]
movaps xmm8, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x100]
call fcn.1400215c4
int3