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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbx
push rsi
sub rsp, 0x148
mov rax, qword [rcx]
mov qword [r11 - 0x18], rbp
mov qword [r11 - 0x28], r12
xor r12d, r12d
mov qword [r11 - 0x30], r13
mov qword [r11 - 0x40], r15
mov r15, rcx
xor ecx, ecx
mov rsi, r9
cmp dword [r15 + 0x4c], ecx
mov rbp, r8
mov dword [r11 - 0xd4], r12d
mov dword [r11 - 0xb0], r12d
mov dword [rsp + 0x7c], 0xffffffff
mov dword [rsp + 0x64], r12d
mov dword [rsp + 0x78], r12d
mov dword [rsp + 0x8c], r12d
mov byte [rsp + 0x60], r12b
mov byte [rsp + 0x61], r12b
mov qword [rsp + 0x98], r12
mov dword [rsp + 0x80], r12d
mov dword [rsp + 0x90], r12d
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xa0], rax
mov qword [r11 - 0xa0], rcx
mov qword [r11 - 0x98], rcx
mov qword [r11 - 0x90], rcx
jne 0x1400671d5
cmp byte [rax + 0x51], cl
jne 0x1400671d5
test r8, r8
je 0x140065e2c
bt word [r8 + 0xa], 8
jae 0x140065e2c
cmp qword [r8 + 0x50], rcx
jne 0x140065e2c
mov rcx, qword [r8]
mov qword [r8], r12
lea r8d, [r12 + 1]
mov qword [rsp + 0x98], rcx
mov rcx, rax
mov rdx, rbp
call fcn.14001b8c0
mov rbp, r12
mov qword [rsp + 0x170], r12
mov rdx, qword [rsp + 0x168]
cmp qword [rdx + 0x18], r12
je 0x1400671d5
mov rcx, r15
mov qword [rsp + 0x120], r14
call fcn.140040bf0
test rax, rax
mov r14, rax
mov qword [rsp + 0x68], rax
je 0x1400671cd
mov rdx, qword [rax + 0x48]
mov qword [rsp + 0x138], rdi
mov r13d, 0xfff0bdc0
test rdx, rdx
je 0x140065ea2
mov rax, qword [rsp + 0xa0]
mov r13d, r12d
mov ecx, dword [rax + 0x28]
test ecx, ecx
jle 0x140065ea2
mov rax, qword [rax + 0x20]
add rax, 0x18
cmp qword [rax], rdx
je 0x140065ea2
add r13d, 1
add rax, 0x20
cmp r13d, ecx
jl 0x140065e90
movzx edi, byte [r14 + 0x3e]
xor r8d, r8d
mov rdx, r14
shr dil, 5
mov rcx, r15
and dil, 1
mov byte [rsp + 0x62], dil
call fcn.1400365c0
test eax, eax
jne 0x1400671c5
mov rcx, r15
call fcn.140026a90
test rax, rax
mov rbx, rax
je 0x1400671c5
cmp byte [r15 + 0x1e], r12b
jne 0x140065eeb
or dword [rax + 0x8c], 4
mov edx, r12d
test rbp, rbp
mov r8d, r13d
setne dl
mov rcx, r15
call fcn.1400604c0
mov ecx, dword [r15 + 0x54]
movsx eax, word [r14 + 0x36]
mov r9, qword [rsp + 0x178]
lea edx, [rcx + 1]
lea ecx, [rax + rcx + 1]
mov dword [r15 + 0x54], ecx
mov r12b, byte [r14 + 0x3e]
lea ebp, [rdx + 1]
shr r12b, 7
mov dword [rsp + 0x70], edx
mov dword [rsp + 0x74], ebp
not r12b
and r12b, 1
test r9, r9
je 0x1400660ff
xor r8d, r8d
mov edx, r8d
cmp dword [r9 + 8], edx
jle 0x140065f68
mov rcx, r8
nop
mov rax, qword [r9]
add edx, 1
add rcx, 0x10
mov dword [rax + rcx - 8], 0xffffffff
cmp edx, dword [r9 + 8]
jl 0x140065f50
cmp dword [r9 + 8], r8d
mov esi, r8d
jle 0x140066102
mov rbp, r8
nop
nop
movsx r11d, word [r14 + 0x36]
test r11d, r11d
jle 0x140066032
mov r14, qword [r9]
mov r9, qword [rsp + 0x68]
mov r9, qword [r9 + 8]
mov r10, qword [r14 + rbp]
nop
test r10, r10
mov rdx, qword [r9]
jne 0x140065faf
neg rdx
sbb eax, eax
jmp 0x14006600f
test rdx, rdx
je 0x140066013
movzx ecx, byte [r10]
mov rdi, r10
test cl, cl
je 0x140065ff8
lea r15, [0x1400ab830]
nop
nop
nop
movzx eax, byte [rdx]
movzx ecx, cl
movzx eax, byte [rax + r15]
cmp byte [rcx + r15], al
jne 0x140065ff0
mov cl, byte [rdi + 1]
add rdi, 1
add rdx, 1
test cl, cl
jne 0x140065fd0
mov r15, qword [rsp + 0x160]
movzx eax, byte [rdx]
lea rdx, [0x1400ab830]
movzx ecx, byte [rax + rdx]
movzx eax, byte [rdi]
movzx eax, byte [rax + rdx]
sub eax, ecx
test eax, eax
je 0x140066079
add r8d, 1
add r9, 0x30
cmp r8d, r11d
jl 0x140065fa0
mov r14, qword [rsp + 0x68]
mov dil, byte [rsp + 0x62]
mov r9, qword [rsp + 0x178]
movsx eax, word [r14 + 0x36]
cmp r8d, eax
jl 0x140066060
mov rcx, qword [r9]
mov rcx, qword [rcx + rbp]
call fcn.14000acb0
test eax, eax
je 0x1400660b8
test dil, dil
jne 0x1400660b8
mov r9, qword [rsp + 0x178]
mov dword [rsp + 0x7c], esi
xor r12b, r12b
add esi, 1
add rbp, 0x10
cmp esi, dword [r9 + 8]
jge 0x1400660f6
xor r8d, r8d
jmp 0x140065f80
mov ecx, dword [rsp + 0x7c]
mov dil, byte [rsp + 0x62]
mov r9, qword [rsp + 0x178]
mov dword [r14 + rbp + 8], r8d
mov r14, qword [rsp + 0x68]
cmp esi, r8d
movsx eax, word [r14 + 0x34]
movzx r12d, r12b
mov edx, 0
cmovne r12d, edx
cmp r8d, eax
cmove ecx, esi
mov dword [rsp + 0x7c], ecx
jmp 0x140066032
mov r8, qword [rsp + 0x168]
movsxd rcx, esi
mov rsi, qword [rsp + 0x178]
mov rax, qword [rsi]
add rcx, rcx
lea rdx, str.table__S_has_no_column_named__s
mov rcx, qword [rax + rcx*8]
xor r9d, r9d
mov qword [rsp + 0x20], rcx
mov rcx, r15
call fcn.140034800
mov byte [r15 + 0x1d], 1
jmp 0x1400671c5
mov ebp, dword [rsp + 0x74]
xor r8d, r8d
jmp 0x140066102
xor r8d, r8d
cmp qword [rsp + 0x170], 0
je 0x140066324
add dword [r15 + 0x54], 1
mov edi, dword [rbx + 0x3c]
mov esi, dword [r15 + 0x54]
xor r9d, r9d
add edi, 1
mov r8d, esi
lea edx, [r9 + 0x11]
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140023de0
mov r9, qword [r15]
xor eax, eax
test r12b, r12b
lea r8, [rsp + 0xb8]
mov rcx, r15
cmovne eax, ebp
mov rbp, qword [rsp + 0x170]
mov byte [rsp + 0xb8], InitCommonControls
mov dword [rsp + 0xc0], eax
movsx eax, word [r14 + 0x36]
mov rdx, rbp
mov dword [rsp + 0xbc], esi
mov byte [rsp + 0xb9], 0
mov dword [rsp + 0xc4], eax
call fcn.14005de10
mov ecx, dword [rsp + 0xc0]
test eax, eax
mov dword [rsp + 0x80], ecx
jne 0x14006718b
mov rax, qword [rsp + 0xa0]
cmp byte [rax + 0x51], 0
jne 0x140067181
cmp dword [r15 + 0x4c], 0
jne 0x140067177
mov r8d, esi
mov edx, 0x12
mov rcx, rbx
call fcn.1400257d0
mov edx, dword [rbx + 0x3c]
lea ecx, [rdi - 1]
cmp edx, ecx
jbe 0x1400661df
mov rax, qword [rbx + 8]
lea rcx, [rcx + rcx*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
mov r8, r14
sub ecx, 1
mov edx, r13d
mov dword [rax + 0x64], ecx
mov rax, qword [rbp]
mov rcx, r15
mov r12d, dword [rax]
call fcn.140026c50
test eax, eax
je 0x1400663c8
mov ecx, dword [r15 + 0x50]
mov byte [rsp + 0x60], 1
lea eax, [rcx + 1]
mov dword [rsp + 0x64], ecx
mov dword [r15 + 0x50], eax
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x140066231
add dword [r15 + 0x54], 1
mov esi, dword [r15 + 0x54]
jmp 0x14006623f
sub al, 1
movzx eax, al
mov byte [r15 + 0x1f], al
mov esi, dword [r15 + rax*4 + 0x24]
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x140066253
add dword [r15 + 0x54], 1
mov edi, dword [r15 + 0x54]
jmp 0x140066261
sub al, 1
movzx eax, al
mov byte [r15 + 0x1f], al
mov edi, dword [r15 + rax*4 + 0x24]
mov r8d, ecx
mov r9d, r12d
mov edx, 0x39
mov rcx, rbx
call fcn.140025730
mov r13d, dword [rsp + 0xbc]
mov edx, 0x14
mov r8d, r13d
mov rcx, rbx
call fcn.1400257d0
mov r8d, dword [rsp + 0x80]
mov r9d, r12d
mov edx, 0x31
mov rcx, rbx
mov dword [rsp + 0x20], esi
mov ebp, eax
call fcn.140023de0
mov r8d, dword [rsp + 0x64]
mov r9d, edi
mov edx, 0x4b
mov rcx, rbx
call fcn.140025730
mov r8d, dword [rsp + 0x64]
mov r9d, esi
mov edx, 0x54
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140023de0
xor r8d, r8d
mov r9d, ebp
lea edx, [r8 + 0xe]
mov rcx, rbx
call fcn.140025730
mov r11d, dword [rbx + 0x3c]
cmp r11d, ebp
jbe 0x140066301
mov rax, qword [rbx + 8]
lea rcx, [rbp + rbp*2]
mov dword [rax + rcx*8 + 8], r11d
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
mov edx, esi
sub ecx, 1
mov dword [rax + 0x64], ecx
mov rcx, r15
call fcn.140004a90
mov edx, edi
call fcn.140004a90
jmp 0x1400663d0
xor eax, eax
mov dword [rsp + 0x64], 0xffffffff
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xd8], r15
test rax, rax
je 0x140066380
mov r12d, dword [rax]
jmp 0x140066383
mov r12d, r8d
test r12d, r12d
mov rsi, r8
jle 0x1400663c8
movsxd rbp, r12d
mov rdi, r8
mov rax, qword [rax + 8]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x1400663b3
lea rcx, [rsp + 0xd8]
call fcn.140055d60
test eax, eax
jne 0x14006716d
mov rax, qword [rsp + 0x98]
add rsi, 1
add rdi, 0x28
cmp rsi, rbp
jl 0x140066391
mov r13d, dword [rsp + 0xbc]
mov rax, qword [rsp + 0x178]
test rax, rax
jne 0x14006642a
test r12d, r12d
jle 0x1400663eb
movsx eax, word [r14 + 0x34]
mov dword [rsp + 0x7c], eax
test r12d, r12d
je 0x140066452
movsx eax, word [r14 + 0x36]
cmp r12d, eax
je 0x140066452
mov r8, qword [rsp + 0x168]
lea rdx, str.table__S_has__d_columns_but__d_values_were_supplied
xor r9d, r9d
mov rcx, r15
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], eax
call fcn.140034800
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov r9d, dword [rax + 8]
cmp r12d, r9d
je 0x140066452
lea rdx, str._d_values_for__d_columns
mov r8d, r12d
mov rcx, r15
call fcn.140034800
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0xa0]
test byte [rsi + 0x2c], 0x80
je 0x1400664c2
add dword [r15 + 0x54], 1
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
mov ebp, dword [r15 + 0x54]
mov dword [rsp + 0x90], ebp
jg 0x14006648e
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x1400664be
add dword [rbx + 0x3c], 1
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi*2]
xor edx, edx
mov dword [rax + rcx*8 + 8], ebp
xor ebp, ebp
mov byte [rax + rcx*8], 0x17
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov dword [rax + rcx*8 + 4], edx
mov byte [rax + rcx*8 + 1], dl
jmp 0x1400664c4
xor ebp, ebp
jmp 0x1400664c4
xor ebp, ebp
lea rax, [rsp + 0xa8]
xor r9d, r9d
or r8d, 0xffffffff
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x84]
mov rdx, r14
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.140045510
mov rcx, rsi
movsxd rdi, eax
lea eax, [rdi + 1]
movsxd rdx, eax
shl rdx, 2
call fcn.140015b90
test rax, rax
mov qword [rsp + 0xb0], rax
je 0x14006719f
test edi, edi
mov rdx, rbp
jle 0x140066536
nop
add dword [r15 + 0x54], 1
mov ecx, dword [r15 + 0x54]
add rdx, 1
cmp rdx, rdi
mov dword [rax + rdx*4 - 4], ecx
jl 0x140066520
cmp byte [rsp + 0x60], 0
je 0x1400665bb
movsxd rdi, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
cmp dword [rax + 0x60], edi
mov dword [rsp + 0x78], edi
jg 0x14006657b
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
je 0x14006657b
mov ecx, dword [rbx + 0x3c]
mov r13d, dword [rsp + 0x64]
mov dword [rsp + 0x78], 1
mov dword [rsp + 0x8c], ecx
jmp 0x14006663e
add dword [rbx + 0x3c], 1
mov rax, qword [rbx + 8]
mov r13d, dword [rsp + 0x64]
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], 0x6d
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], 0
mov ecx, dword [rbx + 0x3c]
mov dword [rsp + 0x8c], ecx
jmp 0x14006663e
cmp qword [rsp + 0x170], 0
je 0x140066639
movsxd rdi, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
cmp dword [rax + 0x60], edi
mov dword [rsp + 0x78], edi
jg 0x1400665ff
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
je 0x1400665ff
mov r13d, dword [rsp + 0x64]
mov edi, 1
mov dword [rsp + 0x78], edi
mov dword [rsp + 0x8c], edi
jmp 0x14006663e
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 4], r13d
mov r13d, dword [rsp + 0x64]
mov byte [rax + rcx*8], 0x14
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], 0
mov dword [rsp + 0x8c], edi
jmp 0x14006663e
mov r13d, dword [rsp + 0x64]
mov rsi, qword [rbx + 0x30]
movsxd rdi, dword [rsi + 0x78]
lea eax, [rdi + 1]
mov dword [rsi + 0x78], eax
lea eax, [rdi - 1]
test edi, eax
jne 0x140066674
mov rdx, qword [rsi + 0x80]
mov rcx, qword [rsi]
lea eax, [rdi + rdi + 1]
movsxd r8, eax
shl r8, 2
call fcn.140022050
mov qword [rsi + 0x80], rax
mov rcx, qword [rsi + 0x80]
test rcx, rcx
je 0x140066687
mov dword [rcx + rdi*4], 0xffffffff
movsxd rsi, dword [rsp + 0x7c]
or ebp, 0xffffffff
sub ebp, edi
test esi, esi
mov dword [rsp + 0x88], ebp
js 0x14006684b
cmp byte [rsp + 0x60], 0
je 0x1400666ff
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x1400666c9
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x1400667a2
add dword [rbx + 0x3c], 1
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi*2]
xor edx, edx
mov dword [rax + rcx*8 + 8], esi
mov esi, dword [rsp + 0x70]
mov byte [rax + rcx*8], 0x2f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rdx
mov byte [rax + rcx*8 + 1], dl
jmp 0x1400667a6
cmp qword [rsp + 0x170], 0
je 0x14006672b
mov r8d, dword [rsp + 0x80]
mov edx, 0x1f
mov rcx, rbx
add r8d, esi
mov esi, dword [rsp + 0x70]
mov r9d, esi
call fcn.140025730
jmp 0x1400667a6
mov rax, qword [rsp + 0x98]
lea rcx, [rsi + rsi*4]
mov esi, dword [rsp + 0x70]
mov rdx, qword [rax + 8]
mov r8d, esi
mov rdx, qword [rdx + rcx*8]
mov rcx, r15
call fcn.14004f580
mov edx, dword [rbx + 0x3c]
mov rax, qword [rbx]
sub edx, 1
cmp byte [rax + 0x51], 0
je 0x140066766
lea rax, [0x1400c20e0]
jmp 0x14006677a
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
lea rax, [rax + rcx*8]
test rax, rax
je 0x1400667a6
cmp byte [rax], 0x1a
jne 0x1400667a6
mov r8d, dword [rsp + 0x84]
xor r10d, r10d
mov byte [rsp + 0x61], 1
mov byte [rax], 0x4b
mov dword [rax + 8], esi
mov dword [rax + 0xc], r10d
mov dword [rax + 4], r8d
jmp 0x1400668d6
mov esi, dword [rsp + 0x70]
mov r8d, esi
mov edx, 0x4d
mov rcx, rbx
call fcn.1400257d0
mov r8d, dword [rsp + 0x84]
mov r9d, esi
mov edi, eax
xor eax, eax
mov rcx, rbx
lea edx, [rax + 0x4b]
mov dword [rsp + 0x20], eax
call fcn.140023de0
mov edx, dword [rbx + 0x3c]
cmp edx, edi
jbe 0x1400667e7
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
sub ecx, 1
mov dword [rax + 0x64], ecx
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066816
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x1400668d3
add dword [rbx + 0x3c], 1
mov rax, qword [rbx + 8]
lea rcx, [rdi + rdi*2]
xor r10d, r10d
mov byte [rax + rcx*8], 0x26
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov byte [rax + rcx*8 + 1], r10b
jmp 0x1400668d6
cmp byte [rsp + 0x62], 0
je 0x1400668a6
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066870
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x1400668ce
add dword [rbx + 0x3c], 1
mov rax, qword [rbx + 8]
mov esi, dword [rsp + 0x70]
lea rcx, [rdi + rdi*2]
xor r10d, r10d
mov byte [rax + rcx*8], 0x1a
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov byte [rax + rcx*8 + 1], r10b
jmp 0x1400668d6
mov r9d, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x84]
xor eax, eax
lea edx, [rax + 0x4b]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.140023de0
mov byte [rsp + 0x61], 1
xor r10d, r10d
jmp 0x1400668d6
xor r10d, r10d
jmp 0x1400668d6
xor r10d, r10d
cmp word [r14 + 0x36], 0
mov esi, r10d
mov r13, r10
jle 0x140066b60
movsxd rbp, dword [rsp + 0x74]
movsxd r14, dword [rsp + 0x80]
mov r9, qword [rsp + 0x68]
movsxd r8, r12d
mov r15, rbp
mov r12, r10
mov qword [rsp + 0xd0], r8
nop
nop
movsx eax, word [r9 + 0x34]
cmp esi, eax
jne 0x140066975
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066943
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066b23
mov r9, qword [rsp + 0x68]
xor r10d, r10d
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], 0x1b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov byte [rax + rcx*8 + 1], 0
jmp 0x140066b2b
mov rax, qword [rsp + 0x178]
test rax, rax
jne 0x140066989
mov edi, esi
mov rcx, r13
jmp 0x1400669bb
mov edx, dword [rax + 8]
mov edi, r10d
mov rcx, r10
test edx, edx
jle 0x1400669c3
mov rax, qword [rax]
add rax, 8
nop
cmp dword [rax], esi
je 0x1400669b3
add edi, 1
add rcx, 1
add rax, 0x10
cmp edi, edx
jl 0x1400669a0
mov rax, qword [rsp + 0x178]
test edi, edi
js 0x140066aec
test r8, r8
je 0x140066aec
test rax, rax
je 0x1400669da
cmp edi, dword [rax + 8]
jge 0x140066aec
cmp byte [rsp + 0x60], 0
je 0x140066a44
mov rax, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
cmp dword [rax + 0x60], ebp
jg 0x140066a0b
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066b19
mov r9, qword [rsp + 0x68]
xor r10d, r10d
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
mov edx, dword [rsp + 0x64]
lea rcx, [rbp + rbp*2]
mov dword [rax + rcx*8 + 8], edi
mov edi, dword [rsp + 0x74]
mov byte [rax + rcx*8], 0x2f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 0x10], r10
mov dword [rax + rcx*8 + 0xc], edi
mov byte [rax + rcx*8 + 1], 0
jmp 0x140066b2b
cmp qword [rsp + 0x170], 0
je 0x140066abe
cmp r14, r15
je 0x140066b2b
mov rax, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
cmp dword [rax + 0x60], ebp
jg 0x140066a82
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066b0f
mov r9, qword [rsp + 0x68]
xor r10d, r10d
add dword [rbx + 0x3c], 1
mov rcx, qword [rbx + 8]
mov eax, dword [rsp + 0x80]
lea rdx, [rbp + rbp*2]
add eax, edi
mov edi, dword [rsp + 0x74]
mov dword [rcx + rdx*8 + 8], edi
mov byte [rcx + rdx*8], 0x20
mov byte [rcx + rdx*8 + 3], 0
mov dword [rcx + rdx*8 + 4], eax
mov dword [rcx + rdx*8 + 0xc], r10d
mov qword [rcx + rdx*8 + 0x10], r10
mov byte [rcx + rdx*8 + 1], 0
jmp 0x140066b2b
lea rax, [rcx + rcx*4]
mov rcx, qword [rsp + 0x98]
mov r8d, ebp
mov rdx, qword [rcx + 8]
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rdx + rax*8]
call fcn.14004f580
mov r9, qword [rsp + 0x68]
xor r10d, r10d
jmp 0x140066b2b
mov rdx, qword [r9 + 8]
mov rcx, qword [rsp + 0x160]
mov r8d, ebp
mov rdx, qword [rdx + r12 + 8]
call fcn.140055b60
mov r9, qword [rsp + 0x68]
xor r10d, r10d
jmp 0x140066b2b
mov r9, qword [rsp + 0x68]
xor r10d, r10d
jmp 0x140066b2b
mov r9, qword [rsp + 0x68]
xor r10d, r10d
jmp 0x140066b2b
mov r9, qword [rsp + 0x68]
xor r10d, r10d
add dword [rsp + 0x74], 1
movsx eax, word [r9 + 0x36]
mov r8, qword [rsp + 0xd0]
mov ebp, dword [rsp + 0x74]
add esi, 1
add r13, 1
add r12, 0x30
cmp esi, eax
jl 0x140066910
mov ebp, dword [rsp + 0x88]
mov r14, qword [rsp + 0x68]
mov eax, dword [rsp + 0x7c]
mov esi, dword [rsp + 0x84]
mov r13, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x160]
mov edi, dword [rsp + 0x70]
mov r15d, dword [rsp + 0xa8]
test eax, eax
lea rax, [rsp + 0x88]
mov r9d, esi
mov qword [rsp + 0x50], rax
movzx eax, byte [rsp + 0x180]
mov dword [rsp + 0x48], ebp
mov byte [rsp + 0x40], al
setns cl
mov r8, r13
mov byte [rsp + 0x38], cl
mov dword [rsp + 0x30], r10d
mov rcx, r12
mov rdx, r14
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r15d
call fcn.140059cc0
movzx eax, byte [rsp + 0x61]
xor ecx, ecx
cmp dword [rsp + 0x88], ecx
mov edx, ecx
mov r9d, r15d
sete dl
mov r8d, esi
mov dword [rsp + 0x40], edx
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov rcx, r12
mov rdx, r14
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], edi
call fcn.14002cb20
mov rax, qword [rsp + 0xa0]
test byte [rax + 0x2c], 0x80
je 0x140066c72
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066c31
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066c6d
add dword [rbx + 0x3c], 1
mov rax, qword [rbx + 8]
mov edx, dword [rsp + 0x90]
lea rcx, [rdi + rdi*2]
xor r13d, r13d
mov byte [rax + rcx*8], 0x25
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], r13b
jmp 0x140066c75
xor r13d, r13d
jmp 0x140066c75
xor r13d, r13d
mov rdi, qword [rbx + 0x30]
or eax, 0xffffffff
sub eax, ebp
js 0x140066c95
mov rdx, qword [rdi + 0x80]
test rdx, rdx
je 0x140066c95
movsxd rcx, eax
mov eax, dword [rbx + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rbx + 0x3c]
sub eax, 1
cmp byte [rsp + 0x60], 0
mov dword [rdi + 0x64], eax
je 0x140066d7c
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066cc7
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066d00
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
mov ebp, dword [rsp + 0x64]
mov edx, dword [rsp + 0x8c]
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], 8
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
jmp 0x140066d04
mov ebp, dword [rsp + 0x64]
mov edx, dword [rbx + 0x3c]
mov eax, dword [rsp + 0x78]
cmp edx, eax
jbe 0x140066d1b
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
sub ecx, 1
mov dword [rax + 0x64], ecx
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066d4a
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066dfd
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], 0x3d
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
jmp 0x140066dfd
cmp qword [rsp + 0x170], 0
je 0x140066dfd
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066da5
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066dd9
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
mov edx, dword [rsp + 0x8c]
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], InitCommonControls
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
mov edx, dword [rbx + 0x3c]
mov eax, dword [rsp + 0x78]
cmp edx, eax
jbe 0x140066df0
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbx + 0x3c]
mov rax, qword [rbx + 0x30]
sub ecx, 1
mov dword [rax + 0x64], ecx
cmp esi, r15d
jge 0x140066e4d
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140066e20
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140066e4d
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], 0x3d
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
mov r14, qword [r14 + 0x10]
test r14, r14
je 0x140066fe1
nop
nop
mov eax, dword [rbx + 0x3c]
mov rbp, qword [rbx + 0x30]
cmp dword [rbp + 0x60], eax
mov dword [rsp + 0x88], eax
jg 0x140066f93
mov eax, dword [rbp + 0x60]
test eax, eax
je 0x140066e82
add eax, eax
jmp 0x140066e87
mov eax, 0x2a
mov r13, qword [rbp]
mov r12, qword [rbx + 8]
cdqe
lea rsi, [rax + rax*2]
xor eax, eax
shl rsi, 3
cmp byte [r13 + 0x51], al
mov rdi, rax
jne 0x140066f4e
test r12, r12
jne 0x140066f29
test rsi, rsi
je 0x140066f1d
cmp rsi, 0x7fffff00
jae 0x140066f1d
cmp dword [0x1400bf010], eax
je 0x140066f01
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x140066ed5
call qword [0x1400bf098]
lea rdx, [rsp + 0x68]
mov ecx, esi
call fcn.140011830
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x140066efa
call qword [0x1400bf0a8]
mov rdi, qword [rsp + 0x68]
jmp 0x140066f11
mov rdi, qword [rsp + 0x68]
jmp 0x140066f11
mov ecx, esi
call qword [0x1400bf038]
mov rdi, rax
mov qword [rsp + 0x68], rax
test rdi, rdi
jne 0x140066f4e
mov byte [r13 + 0x51], 1
jmp 0x140066f4e
mov qword [rsp + 0x68], rax
mov byte [r13 + 0x51], 1
jmp 0x140066f4e
call fcn.140047020
test eax, eax
je 0x140066f36
xor eax, eax
jmp 0x140066f49
mov rdx, rsi
mov rcx, r12
call fcn.140015db0
test rax, rax
mov rdi, rax
jne 0x140066f4e
mov byte [r13 + 0x51], 1
test rdi, rdi
je 0x140066fc5
cmp qword [rbp], 0
jne 0x140066f65
mov rcx, rdi
call qword [0x1400bf050]
jmp 0x140066f6e
mov rcx, rdi
call qword [0x1400bf050]
movsxd rcx, eax
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov eax, dword [rsp + 0x88]
shr rdx, 4
xor r13d, r13d
mov dword [rbp + 0x60], edx
mov qword [rbx + 8], rdi
add dword [rbx + 0x3c], 1
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
mov byte [rax + rcx*8], 0x3d
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
jmp 0x140066fc8
xor r13d, r13d
mov r14, qword [r14 + 0x28]
add r15d, 1
test r14, r14
jne 0x140066e60
mov r12, qword [rsp + 0x160]
mov rax, qword [rsp + 0xa0]
test byte [rax + 0x2c], 0x80
je 0x1400671bd
cmp byte [r12 + 0x1e], 0
jne 0x1400671b3
cmp qword [r12 + 0x1c0], 0
jne 0x1400671a9
mov rax, qword [rbx + 0x30]
movsxd rdi, dword [rbx + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x14006702c
mov edx, 1
mov rcx, rbx
call fcn.1400214c0
test eax, eax
jne 0x140067063
mov rax, qword [rbx + 8]
add dword [rbx + 0x3c], 1
mov edx, dword [rsp + 0x90]
lea rcx, [rdi + rdi*2]
mov byte [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
mov edx, 1
mov rcx, rbx
call fcn.140025460
mov rdx, qword [rbx]
cmp byte [rdx + 0x51], 0
jne 0x140067195
mov rbx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
test rax, rax
je 0x14006708f
mov edx, dword [rax + 0x68]
jmp 0x140067094
mov edx, 0x3b9aca00
or rcx, 0xffffffffffffffff
xor eax, eax
lea rbp, str.rows_inserted
mov rdi, rbp
repne scasb al, byte [rdi]
not rcx
lea rdi, [rcx - 1]
and edi, 0x3fffffff
cmp edi, edx
jle 0x1400670ba
lea edi, [rdx + 1]
lea rax, [0x1400085a0]
mov si, 0x202
test rax, rax
jne 0x140067136
test word [rbx + 8], 0x2460
jne 0x1400670d7
cmp dword [rbx + 0x20], eax
je 0x1400670df
mov rcx, rbx
call fcn.14001e0c0
cmp qword [rbx + 0x28], 0
mov qword [rbx + 0x10], rbp
mov qword [rbx + 0x18], rbp
jne 0x140067112
mov rcx, rbp
call qword [0x1400bf050]
mov word [rbx + 8], si
mov rsi, qword [rsp + 0x178]
mov dword [rbx + 0x20], eax
mov dword [rbx + 0xc], edi
mov byte [rbx + 0xa], 1
jmp 0x1400671c5
mov rcx, rbp
call qword [0x1400bf050]
mov word [rbx + 8], si
mov rsi, qword [rsp + 0x178]
mov dword [rbx + 0x20], eax
mov dword [rbx + 0xc], edi
mov byte [rbx + 0xa], 1
jmp 0x1400671c5
test word [rbx + 8], 0x2460
jne 0x140067144
cmp dword [rbx + 0x20], 0
je 0x14006714c
mov rcx, rbx
call fcn.14001e0c0
mov si, 0xa02
mov qword [rbx + 0x10], rbp
mov qword [rbx + 0x30], r13
mov word [rbx + 8], si
mov rsi, qword [rsp + 0x178]
mov dword [rbx + 0xc], edi
mov byte [rbx + 0xa], 1
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
jmp 0x1400671c5
mov rsi, qword [rsp + 0x178]
mov rdi, qword [rsp + 0x138]
mov r14, qword [rsp + 0x120]
mov rbx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x168]
mov rcx, rbx
call fcn.1400174a0
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.140013fb0
mov rdx, qword [rsp + 0x170]
mov r8d, 1
mov rcx, rbx
call fcn.14001b8c0
mov rdx, rsi
mov rcx, rbx
call fcn.140013750
mov rsi, qword [rsp + 0xb0]
mov r15, qword [rsp + 0x118]
test rsi, rsi
mov r13, qword [rsp + 0x128]
mov r12, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x140]
je 0x1400672d6
test rbx, rbx
je 0x140067272
cmp qword [rbx + 0x2c0], 0
je 0x140067272
mov rdx, rsi
mov rcx, rbx
add rsp, 0x148
pop rsi
pop rbx
jmp fcn.140011800
cmp dword [0x1400bf010], 0
je 0x1400672cd
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x14006728d
call qword [0x1400bf098]
mov rcx, rsi
call qword [0x1400bf050]
sub qword [0x1400c5018], 1
movsxd rcx, eax
sub qword [0x1400c4fd0], rcx
mov rcx, rsi
call qword [0x1400bf040]
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x1400672d6
add rsp, 0x148
pop rsi
pop rbx
jmp qword [0x1400bf0a8]
mov rcx, rsi
call qword [0x1400bf040]
add rsp, 0x148
pop rsi
pop rbx
ret