Function at 0x140104700
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push r14
push r15
sub rsp, 0x1b8
mov r14, qword [rcx]
xor ebx, ebx
mov rbp, rdx
mov r15, rcx
mov dword [rsp + 0x108], ebx
mov qword [rsp + 0x118], rbx
mov dword [rsp + 0xc4], ebx
mov dword [rsp + 0xc0], ebx
mov dword [rsp + 0xe8], ebx
mov dword [rsp + 0xb0], ebx
mov dword [rsp + 0x80], ebx
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x100], r14
cmp dword [rcx + 0x4c], ebx
jne 0x1401067be
cmp byte [r14 + 0x51], bl
jne 0x1401067be
mov qword [rax - 0x40], r13
call fcn.140102e30
mov qword [rsp + 0x78], rax
mov r13, rax
test rax, rax
je 0x1401067b6
mov rdx, qword [rax + 0x68]
mov eax, 0xfff0bdc0
mov r9, qword [r15]
mov qword [rsp + 0x1b0], rsi
mov esi, eax
mov qword [rsp + 0x1a8], rdi
mov dword [rsp + 0xd8], eax
mov dword [rsp + 0x88], eax
mov qword [rsp + 0x1a0], r12
test rdx, rdx
je 0x14010481a
movsxd rax, dword [r9 + 0x28]
mov esi, ebx
mov dword [rsp + 0x88], ebx
test eax, eax
jle 0x14010481a
mov r8, rax
mov ecx, ebx
mov rax, qword [r9 + 0x20]
add rax, 0x18
nop dword [rax]
cmp qword [rax], rdx
je 0x140104813
inc esi
inc rcx
add rax, 0x20
cmp rcx, r8
jl 0x140104800
mov dword [rsp + 0x88], esi
test dword [r9 + 0x2c], 0x800000
mov r12d, ebx
mov dword [rsp + 0xdc], ebx
mov rdi, rbx
je 0x14010483f
mov rdx, r13
mov rcx, r15
call fcn.1401040b0
mov rdi, rax
mov rbx, rdi
test rdi, rdi
je 0x140104886
mov rbp, qword [rsp + 0x1f0]
nop
cmp byte [rbx + 0x10], 0x6e
jne 0x14010486d
mov rcx, qword [rbx + 0x20]
mov rdx, rbp
call fcn.1400757c0
test eax, eax
je 0x14010486d
movzx eax, byte [rbx + 0x11]
or r12d, eax
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x140104850
mov rbp, qword [rsp + 0x1e8]
mov dword [rsp + 0xdc], r12d
xor ebx, ebx
mov rdx, r13
test r12d, r12d
mov eax, ebx
mov rcx, r15
cmovne rax, rdi
mov qword [rsp + 0xb8], rax
mov rax, qword [r13 + 0x18]
mov qword [rsp + 0xf0], rax
call fcn.140115430
test eax, eax
jne 0x14010679e
mov r8d, r12d
mov rdx, r13
mov rcx, r15
call fcn.1400ef5a0
test eax, eax
jne 0x14010679e
mov r10d, dword [r15 + 0x50]
mov dword [rbp + 0x50], r10d
inc dword [r15 + 0x50]
test byte [r13 + 0x46], 0x20
mov ecx, dword [r15 + 0x50]
lea eax, [r10 + 1]
mov dword [rsp + 0x90], eax
mov dword [rsp + 0x64], r10d
mov dword [rsp + 0x6c], r10d
jne 0x140104907
mov r9d, ebx
mov qword [rsp + 0x98], rbx
jmp 0x14010493b
mov r9, qword [r13 + 0x10]
mov qword [rsp + 0x98], r9
test r9, r9
je 0x14010493b
nop dword [rax + rax]
mov eax, dword [r9 + 0x5c]
and al, 3
cmp al, 2
je 0x140104933
mov r9, qword [r9 + 0x28]
test r9, r9
jne 0x140104920
mov qword [rsp + 0x98], r9
mov rdx, qword [r13 + 0x10]
test rdx, rdx
je 0x140104973
mov eax, dword [rdx + 0x5c]
mov r8d, ecx
and al, 3
cmp al, 2
jne 0x140104960
test r9, r9
je 0x140104960
mov dword [rbp + 0x50], ecx
mov r8d, dword [r15 + 0x50]
mov dword [rsp + 0x64], ecx
lea ecx, [r8 + 1]
inc ebx
mov dword [r15 + 0x50], ecx
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x140104944
movsx eax, word [r13 + 0x3e]
add eax, ebx
movsxd rdi, ebx
cdqe
lea rcx, [rax*4 + 2]
add rcx, rdi
cmp byte [r14 + 0x51], 0
jne 0x14010679e
cmp byte [r14 + 0x152], 0
je 0x1401049b7
movzx eax, word [r14 + 0x150]
cmp rcx, rax
jbe 0x140104b25
inc dword [r14 + 0x160]
call fcn.1400f1360
mov qword [rsp + 0xa8], rax
mov rbp, rax
test rax, rax
jne 0x1401049d1
mov byte [r14 + 0x51], 1
test rbp, rbp
je 0x14010679e
movsx rax, word [r13 + 0x3e]
mov edx, 1
lea rax, [rax*4]
add rax, rbp
mov qword [rsp + 0x110], rax
lea r14, [rax + rdi*4]
lea eax, [rbx + 1]
mov qword [rsp + 0xd0], r14
cdqe
mov rcx, r14
mov r8, rax
mov qword [rsp + 0x120], rax
call fcn.14020dff0
xor r9d, r9d
mov byte [r14 + rdi + 1], 0
mov edx, r9d
cmp r9w, word [r13 + 0x3e]
jge 0x140104a46
mov rcx, rbp
mov dword [rcx], 0xffffffff
lea rcx, [rcx + 4]
movsx eax, word [r13 + 0x3e]
inc edx
cmp edx, eax
jl 0x140104a31
mov rax, qword [rsp + 0x1e8]
lea rbx, [0x14024c050]
mov rcx, qword [rsp + 0x1f0]
xor r14b, r14b
mov qword [rsp + 0x158], rax
xorps xmm0, xmm0
xor al, al
mov qword [rsp + 0x180], r9
xorps xmm1, xmm1
mov qword [rsp + 0x150], r15
mov r12d, r9d
mov dword [rsp + 0x8c], r14d
movdqu xmmword [rsp + 0x160], xmm0
mov byte [rsp + 0x60], al
movdqu xmmword [rsp + 0x170], xmm1
cmp dword [rcx], r9d
jle 0x140104d83
movsxd rsi, esi
mov r15, r9
mov qword [rsp + 0xf8], rsi
nop dword [rax + rax]
mov rdx, qword [rcx + 8]
lea rcx, [rsp + 0x150]
mov rdx, qword [r15 + rdx]
call fcn.1400fbca0
test eax, eax
jne 0x1401066e8
movsx rcx, word [r13 + 0x3e]
xor eax, eax
mov ebx, eax
mov edi, eax
cmp ax, cx
jge 0x140104c17
mov rbp, qword [rsp + 0x1f0]
mov rsi, rcx
mov r14, qword [rbp + 8]
mov rbp, qword [r13 + 8]
mov r11, rbp
mov r10, qword [r14 + r15 + 8]
nop dword [rax]
mov r9, qword [r11]
test r9, r9
jne 0x140104b80
mov rax, r10
neg rax
sbb ecx, ecx
jmp 0x140104be5
mov rbp, qword [r14 + 0x168]
mov qword [rsp + 0xa8], rbp
test rbp, rbp
jne 0x140104b45
inc dword [r14 + 0x164]
jmp 0x1401049b7
mov rax, qword [rbp]
mov qword [r14 + 0x168], rax
mov eax, dword [r14 + 0x154]
inc eax
mov dword [r14 + 0x154], eax
inc dword [r14 + 0x15c]
cmp eax, dword [r14 + 0x158]
jle 0x1401049da
mov dword [r14 + 0x158], eax
jmp 0x1401049da
test r10, r10
je 0x140104bed
movzx r8d, byte [r9]
mov rdx, r10
test r8b, r8b
je 0x140104bcb
movzx eax, r8b
lea r13, [0x14024c050]
sub r9, r10
nop
movzx ecx, al
movzx r8d, al
movzx eax, byte [rdx]
movzx eax, byte [rax + r13]
cmp byte [rcx + r13], al
jne 0x140104bc6
movzx eax, byte [r9 + rdx + 1]
inc rdx
movzx r8d, al
test al, al
jne 0x140104ba0
mov r13, qword [rsp + 0x78]
movzx eax, r8b
lea r8, [0x14024c050]
movzx ecx, byte [rax + r8]
movzx eax, byte [rdx]
movzx eax, byte [rax + r8]
sub ecx, eax
test ecx, ecx
je 0x140104c75
inc ebx
inc rdi
add r11, 0x30
cmp rdi, rsi
jl 0x140104b10
mov rbp, qword [rsp + 0xa8]
mov r14d, dword [rsp + 0x8c]
mov rsi, qword [rsp + 0xf8]
movsx eax, word [r13 + 0x3e]
cmp ebx, eax
jl 0x140104cef
cmp qword [rsp + 0x98], 0
jne 0x140104e02
mov rax, qword [rsp + 0x1f0]
mov rbx, qword [rax + 8]
mov rcx, qword [rbx + r15 + 8]
call fcn.1400ef640
test eax, eax
je 0x140104e02
mov rax, qword [rbx + r15]
lea r9, str.ROWID
mov qword [rsp + 0x118], rax
mov rdi, 0xffffffffffffffff
mov byte [rsp + 0x60], 1
jmp 0x140104d0c
movsx eax, word [r13 + 0x3c]
cmp ebx, eax
jne 0x140104ca9
mov rax, qword [r14 + r15]
mov qword [rsp + 0x118], rax
mov byte [rsp + 0x60], 1
mov rbp, qword [rsp + 0xa8]
mov r14d, dword [rsp + 0x8c]
mov dword [rbp + rdi*4], r12d
jmp 0x140104c0f
cmp qword [rsp + 0x98], 0
je 0x140104c8f
mov r14d, dword [rsp + 0x8c]
lea rax, [rdi + rdi*2]
add rax, rax
movzx r14d, r14b
test byte [rbp + rax*8 + 0x2b], 1
mov eax, 1
mov rbp, qword [rsp + 0xa8]
cmovne r14d, eax
mov dword [rsp + 0x8c], r14d
mov dword [rbp + rdi*4], r12d
jmp 0x140104c0f
test rdi, rdi
jns 0x140104cfd
lea r9, str.ROWID
jmp 0x140104d0c
mov rax, qword [r13 + 8]
lea rcx, [rdi + rdi*2]
add rcx, rcx
mov r9, qword [rax + rcx*8]
mov rax, qword [rsp + 0x100]
mov rcx, rsi
mov r8, qword [r13]
mov edx, 0x17
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rcx, qword [rcx + rax]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x1e0]
call fcn.1400cc6a0
cmp eax, 1
je 0x1401066e8
cmp eax, 2
jne 0x140104d54
mov dword [rbp + rdi*4], 0xffffffff
mov rcx, qword [rsp + 0x1f0]
inc r12d
add r15, 0x28
cmp r12d, dword [rcx]
jl 0x140104ac0
mov r15, qword [rsp + 0x1e0]
lea rbx, [0x14024c050]
movzx eax, byte [rsp + 0x60]
xor r9d, r9d
lea r12d, [rax + r14]
mov rax, qword [rsp + 0x1e8]
movzx edi, r12b
mov byte [rsp + 0x68], r12b
mov dword [rsp + 0xe4], edi
mov qword [rax + 0x68], r9
mov rax, qword [r15]
test dword [rax + 0x2c], 0x80000
je 0x140104f75
mov r10, qword [r13 + 0x20]
test r10, r10
je 0x140104e51
mov r8, r9
movsxd r9, dword [r10 + 0x28]
test r9, r9
jle 0x140104df4
lea rdx, [r10 + 0x40]
movsxd rcx, dword [rdx]
cmp dword [rbp + rcx*4], 0
jge 0x140104e3a
movsx eax, word [r13 + 0x3c]
cmp ecx, eax
jne 0x140104de8
test r12b, r12b
jne 0x140104e3a
inc r8
add rdx, 0x10
cmp r8, r9
jl 0x140104dd0
mov r10, qword [r10 + 8]
test r10, r10
je 0x140104e51
xor r9d, r9d
jmp 0x140104dc0
mov rbx, qword [rsp + 0x1e0]
lea rdx, str.no_such_column:__s
movsxd rax, r12d
lea rcx, [rax + rax*4]
mov rax, qword [rsp + 0x1f0]
mov r8, qword [rax + 8]
mov r8, qword [r8 + rcx*8 + 8]
mov rcx, rbx
call fcn.1400d9350
mov byte [rbx + 0x1d], 1
jmp 0x1401066e8
mov edi, 1
xor r9d, r9d
mov r14d, edi
mov dword [rsp + 0x84], edi
jmp 0x140104f85
mov r9, qword [r13 + 0x68]
mov r10, qword [r13]
mov r11, qword [r9 + 0x60]
test r11, r11
je 0x140104eaa
xor eax, eax
mov rdx, r10
mov r8d, eax
movzx eax, byte [r10]
test al, al
je 0x140104e91
movzx eax, al
lea rdx, [rdx + 1]
movzx ecx, byte [rax + rbx]
lea eax, [r8*8]
xor ecx, eax
movzx eax, byte [rdx]
xor r8d, ecx
test al, al
jne 0x140104e72
xor edx, edx
mov eax, r8d
div dword [r9 + 0x50]
mov ecx, edx
add rcx, rcx
mov rbx, qword [r11 + rcx*8 + 8]
mov r11d, dword [r11 + rcx*8]
jmp 0x140104eb2
mov rbx, qword [r9 + 0x58]
mov r11d, dword [r9 + 0x54]
test r11d, r11d
je 0x140104f72
nop dword [rax + rax]
mov r9, qword [rbx + 0x18]
dec r11d
test r9, r9
jne 0x140104ed6
mov rax, r10
neg rax
sbb ecx, ecx
jmp 0x140104f35
test r10, r10
je 0x140104f39
movzx r8d, byte [r9]
lea rsi, [0x14024c050]
mov rdx, r10
test r8b, r8b
je 0x140104f24
movzx eax, r8b
sub r9, r10
nop word [rax + rax]
movzx ecx, al
movzx r8d, al
movzx eax, byte [rdx]
movzx eax, byte [rax + rsi]
cmp byte [rcx + rsi], al
jne 0x140104f24
movzx eax, byte [r9 + rdx + 1]
inc rdx
movzx r8d, al
test al, al
jne 0x140104f00
movzx eax, r8b
movzx ecx, byte [rax + rsi]
movzx eax, byte [rdx]
movzx eax, byte [rax + rsi]
sub ecx, eax
test ecx, ecx
je 0x140104f47
mov rbx, qword [rbx]
test r11d, r11d
jne 0x140104ec0
jmp 0x140104f72
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x140104f72
mov r9d, edi
mov r8, rbp
mov rdx, rbx
mov rcx, r13
call fcn.140085510
test eax, eax
jne 0x140104e3a
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x140104f50
xor r9d, r9d
mov r14d, r9d
mov dword [rsp + 0x84], r9d
mov edi, 1
mov r8, qword [r13 + 0x10]
test r8, r8
je 0x140105028
mov r11, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x110]
inc r11
mov r13, qword [rsp + 0x98]
nop dword [rax]
test r12b, r12b
jne 0x140104ff9
test r14d, r14d
jne 0x140104ff9
cmp qword [r8 + 0x48], 0
jne 0x140104ff9
cmp r8, r13
je 0x140104ff9
movzx eax, word [r8 + 0x56]
mov r10d, r9d
mov rdx, r9
cmp r9w, ax
jae 0x140105006
mov rcx, qword [r8 + 8]
mov r9d, eax
nop
movsx rax, word [rcx]
cmp dword [rbp + rax*4], 0
jge 0x140104ff9
inc rdx
add rcx, 2
cmp rdx, r9
jl 0x140104fe0
jmp 0x140105006
inc dword [r15 + 0x54]
mov r10d, dword [r15 + 0x54]
test r10d, r10d
jne 0x14010500a
mov byte [r11], 0
mov dword [rbx], r10d
inc r11
mov r8, qword [r8 + 0x28]
add rbx, 4
mov r9d, 0
test r8, r8
jne 0x140104fb0
mov r13, qword [rsp + 0x78]
mov rsi, qword [r15 + 0x10]
mov qword [rsp + 0xf8], rsi
test rsi, rsi
jne 0x1401050b7
mov rcx, r15
call fcn.140109600
mov qword [rsp + 0xf8], rax
mov rsi, rax
mov qword [r15 + 0x10], rax
test rax, rax
je 0x140105096
movsxd rbx, dword [rax + 0x3c]
mov rax, qword [rax + 0x30]
cmp dword [rax + 0x60], ebx
jg 0x140105070
mov edx, edi
mov rcx, rsi
call fcn.1400aad80
test eax, eax
jne 0x140105096
inc dword [rsi + 0x3c]
lea rcx, [rbx + rbx*2]
mov rax, qword [rsi + 8]
xor edx, edx
mov word [rax + rcx*8], 0x9b
mov byte [rax + rcx*8 + 3], 0
mov qword [rax + rcx*8 + 4], rdx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
cmp qword [r15 + 0x1c0], 0
jne 0x1401050ae
mov rax, qword [r15]
test byte [rax + 0x4c], 8
jne 0x1401050ae
mov byte [r15 + 0x23], 1
test rsi, rsi
je 0x1401066e8
cmp byte [r15 + 0x1e], 0
jne 0x1401050c5
or dword [rsi + 0x8c], 4
mov rax, qword [r15 + 0x1c0]
mov rbx, r15
movsxd rdi, dword [rsp + 0x88]
test rax, rax
cmovne rbx, rax
mov eax, dword [rbx + 0x16c]
bt eax, edi
jb 0x14010511b
bts eax, edi
mov rcx, rdi
mov dword [rbx + 0x16c], eax
mov rax, qword [rbx]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + rcx + 0x18]
mov eax, dword [rcx]
mov dword [rbx + rdi*4 + 0x170], eax
cmp edi, 1
jne 0x14010511b
mov rcx, rbx
call fcn.1400f21a0
mov eax, dword [rbx + 0x168]
or byte [rbx + 0x20], 1
bts eax, edi
mov dword [rbx + 0x168], eax
test byte [r13 + 0x46], 0x10
je 0x140105191
mov eax, dword [rsp + 0x200]
mov r8, r13
mov rdx, qword [rsp + 0x1f8]
mov rcx, r15
mov r9, qword [rsp + 0x1f0]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x30], rdx
mov rdx, qword [rsp + 0x1e8]
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
call fcn.14011c360
xor eax, eax
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x1e8], rax
jmp 0x1401066e8
mov edi, dword [r15 + 0x54]
inc edi
cmp byte [rsp + 0x8c], 0
mov dword [rsp + 0xec], edi
lea edx, [rdi + 1]
mov dword [rsp + 0xa0], edx
mov ebp, edx
mov dword [r15 + 0x54], edx
mov dword [rsp + 0x70], edx
jne 0x1401051d0
mov rax, qword [rsp + 0xb8]
test rax, rax
jne 0x1401051d0
mov ecx, edx
test r14d, r14d
je 0x1401051ed
movsx ecx, word [r13 + 0x3e]
lea eax, [rdx + 1]
add ecx, edx
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0xb8]
mov dword [r15 + 0x54], ecx
test r12b, r12b
jne 0x1401051fc
test rax, rax
jne 0x1401051fc
test r14d, r14d
je 0x14010520c
lea eax, [rcx + 1]
mov dword [rsp + 0xa0], eax
mov ecx, eax
mov dword [r15 + 0x54], eax
mov r12d, dword [rsp + 0x64]
lea eax, [rcx + 1]
mov r14, qword [rsp + 0x1f8]
mov dword [rsp + 0xe0], eax
movsx eax, word [r13 + 0x3e]
add eax, ecx
cmp qword [rsp + 0xf0], 0
mov dword [r15 + 0x54], eax
je 0x14010527c
mov rax, qword [r15 + 0x230]
mov r9d, r12d
mov qword [rsp + 0x138], rax
mov r8, r14
mov rax, qword [r13]
mov rdx, r13
mov rcx, r15
mov qword [r15 + 0x230], rax
call fcn.1400f1580
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x130], r15
mov rdx, r14
lea rcx, [rsp + 0x150]
call fcn.1400fbca0
test eax, eax
jne 0x1401066cc
xor r8d, r8d
lea edx, [rax + 0x1c]
test byte [r13 + 0x46], 0x20
mov rcx, rsi
jne 0x140105435
mov r9d, edi
mov dword [rsp + 0x20], ebp
call fcn.1401089e0
mov ecx, dword [rsp + 0x90]
mov eax, 4
mov rdx, qword [rsp + 0x1e8]
xor r9d, r9d
mov dword [rsp + 0x30], ecx
mov r8, r14
mov word [rsp + 0x28], ax
mov rcx, r15
xor eax, eax
mov qword [rsp + 0x20], rax
call fcn.140117460
mov r15, rax
test rax, rax
je 0x1401066cc
mov rbx, qword [rax + 0x4c]
mov r9d, ebp
movzx r14d, byte [rax + 0x36]
mov r8d, r12d
xor eax, eax
mov qword [rsp + 0x128], rbx
mov rcx, rsi
mov dword [rsp + 0x88], r14d
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x67]
call fcn.1401089e0
test r14d, r14d
jne 0x140105340
xor eax, eax
mov r9d, ebp
mov r8d, edi
mov dword [rsp + 0x20], eax
mov edx, 0x80
mov rcx, rsi
call fcn.1401089e0
xor edi, edi
mov rcx, r15
call fcn.140118260
mov rax, qword [rsp + 0x100]
mov rbp, qword [rsp + 0x1e0]
test byte [rax + 0x2c], 0x80
je 0x14010538d
cmp qword [rbp + 0x1c8], 0
jne 0x14010538d
inc dword [rbp + 0x54]
xor r8d, r8d
mov eax, dword [rbp + 0x54]
mov rcx, rsi
mov r9d, eax
mov dword [rsp + 0xe8], eax
mov dword [rsp + 0x20], edi
lea edx, [r8 + 0x19]
call fcn.1401089e0
mov rdi, qword [rsi + 0x30]
mov edx, dword [rdi + 0x78]
mov dword [rsp + 0xcc], edx
lea eax, [rdx + 1]
mov dword [rdi + 0x78], eax
lea eax, [rdx - 1]
test edx, eax
jne 0x1401053d3
mov rcx, qword [rdi]
lea eax, [rdx*2 + 1]
mov rdx, qword [rdi + 0x80]
movsxd r8, eax
shl r8, 2
call fcn.1400d6470
mov edx, dword [rsp + 0xcc]
mov qword [rdi + 0x80], rax
mov rcx, qword [rdi + 0x80]
test rcx, rcx
je 0x1401053e9
movsxd rax, edx
mov dword [rcx + rax*4], 0xffffffff
mov r15, qword [rsp + 0xf0]
mov edi, edx
not edi
mov dword [rsp + 0xc8], edi
test r15, r15
jne 0x1401058c3
cmp dword [rsp + 0x200], 5
jne 0x140105647
mov r12, qword [rsp + 0xd0]
mov edx, 1
mov r8, qword [rsp + 0x120]
mov rcx, r12
call fcn.14020dff0
jmp 0x14010566b
mov eax, dword [r15 + 0x54]
xor r13d, r13d
mov ebx, dword [r15 + 0x50]
mov rdi, qword [rsp + 0x98]
mov dword [rsp + 0xc4], ebx
lea ebp, [rax + 1]
mov dword [rsp + 0x20], r13d
inc eax
mov dword [rsp + 0xc8], ebp
movsx r12, word [rdi + 0x56]
mov r9d, ebp
add eax, r12d
mov dword [rsp + 0x80], eax
mov dword [r15 + 0x54], eax
lea eax, [rbx + 1]
mov dword [r15 + 0x50], eax
call fcn.1401089e0
mov r9d, r12d
mov dword [rsp + 0x20], r13d
mov r8d, ebx
lea edx, [r13 + 0x39]
mov rcx, rsi
call fcn.1401089e0
mov rdx, rdi
movsxd r13, eax
mov rcx, r15
call fcn.140114b90
mov ecx, dword [rsp + 0x90]
mov eax, 4
mov rdx, qword [rsp + 0x1e8]
xor r9d, r9d
mov dword [rsp + 0x30], ecx
mov r8, r14
mov word [rsp + 0x28], ax
mov rcx, r15
xor eax, eax
mov qword [rsp + 0x20], rax
call fcn.140117460
mov qword [rsp + 0x148], rax
mov r15, rax
test rax, rax
je 0x1401066cc
mov rbx, qword [rax + 0x4c]
mov r14, r12
movzx eax, byte [rax + 0x36]
mov dword [rsp + 0x88], eax
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x128], rbx
test r12d, r12d
jle 0x140105577
mov rbx, qword [rsp + 0x78]
xor eax, eax
mov r15, qword [rsp + 0x98]
mov edi, eax
mov r12d, dword [rsp + 0x64]
nop word [rax + rax]
mov rax, qword [r15 + 8]
mov r8d, r12d
mov rdx, rbx
mov dword [rsp + 0x20], ebp
mov rcx, rsi
movsx r9d, word [rax + rdi*2]
call fcn.1400dae00
inc ebp
inc rdi
cmp rdi, r14
jl 0x140105530
mov rbx, qword [rsp + 0x140]
mov r12d, r14d
mov r15, qword [rsp + 0x148]
mov ebp, dword [rsp + 0xc8]
mov rdi, qword [rsp + 0x98]
mov r14d, dword [rsp + 0x88]
test r14d, r14d
je 0x1401055e3
cmp r13d, dword [rsi + 0x3c]
jge 0x1401055ca
mov rax, qword [rsi + 8]
lea rcx, [r13*2]
add rcx, r13
movsx edx, byte [rax + rcx*8 + 1]
lea rdi, [rax + rcx*8]
mov r8, qword [rdi + 0x10]
mov rcx, qword [rsi]
call fcn.140087680
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov byte [rdi], 0x9c
mov eax, dword [rsi + 0x3c]
dec eax
cmp r13d, eax
jne 0x1401055ca
mov dword [rsi + 0x3c], eax
mov r13, qword [rsp + 0x78]
mov dword [rsp + 0xc0], r12d
mov dword [rsp + 0x80], ebp
jmp 0x140105340
mov rdx, rdi
mov rcx, rsi
call fcn.1400ecf30
mov r13d, dword [rsp + 0x80]
mov r9d, r12d
mov r8d, ebp
mov dword [rsp + 0x20], r13d
mov edx, 0x31
mov rcx, rsi
mov rdi, rax
call fcn.1401089e0
mov r9d, r12d
mov r8, rdi
mov edx, eax
mov rcx, rsi
call fcn.140108e00
mov r8d, dword [rsp + 0xc4]
xor edi, edi
mov r9d, r13d
mov dword [rsp + 0x20], edi
mov rcx, rsi
lea edx, [rdi + 0x6e]
call fcn.1401089e0
mov r13, qword [rsp + 0x78]
jmp 0x140105342
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x140105663
cmp byte [rax + 0x5a], 5
je 0x140105413
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140105650
mov r12, qword [rsp + 0xd0]
test r14d, r14d
je 0x140105696
mov ecx, dword [rsp + 0x6c]
test ebx, ebx
js 0x140105682
sub ebx, ecx
movsxd rax, ebx
mov byte [rax + r12], 0
mov eax, dword [rsp + 0x12c]
test eax, eax
js 0x140105696
sub eax, ecx
cdqe
mov byte [rax + r12], 0
test byte [r13 + 0x46], 0x10
mov ecx, dword [rsp + 0x6c]
mov r15d, ecx
jne 0x14010582d
mov rdx, qword [r13 + 0x68]
test rdx, rdx
je 0x1401056f4
mov rax, qword [rbp]
xor r9d, r9d
mov ebx, r9d
mov dword [rsp + 0xd8], ebx
movsxd rcx, dword [rax + 0x28]
test ecx, ecx
jle 0x1401056f9
mov rax, qword [rax + 0x20]
mov r8, rcx
add rax, 0x18
mov ecx, r9d
cmp qword [rax], rdx
je 0x1401056eb
inc ebx
inc rcx
add rax, 0x20
cmp rcx, r8
jl 0x1401056d8
mov dword [rsp + 0xd8], ebx
jmp 0x1401056f9
mov ebx, 0xfff0bdc0
mov rcx, rbp
call fcn.1400ec180
mov rdi, rax
test r15d, r15d
jns 0x14010570d
mov r15d, dword [rbp + 0x50]
mov edx, r15d
inc r15d
test byte [r13 + 0x46], 0x20
jne 0x14010573e
test r12, r12
je 0x140105726
cmp byte [r12], 0
je 0x14010573e
mov r9, r13
mov dword [rsp + 0x20], 0x37
mov r8d, ebx
mov rcx, rbp
call fcn.1400f1f10
jmp 0x140105758
mov rax, qword [r13]
mov r9b, 1
mov r8d, dword [r13 + 0x38]
mov edx, ebx
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.140103b40
mov rbx, qword [r13 + 0x10]
test rbx, rbx
je 0x140105818
mov esi, dword [rsp + 0xd8]
lea r14, [r12 + 1]
mov r13d, r15d
inc r15d
test r12, r12
je 0x140105782
cmp byte [r14], 0
je 0x1401057f3
mov rax, qword [rdi + 0x30]
movsxd rbp, dword [rdi + 0x3c]
mov r12d, dword [rbx + 0x50]
cmp dword [rax + 0x60], ebp
jg 0x1401057a4
mov edx, 1
mov rcx, rdi
call fcn.1400aad80
test eax, eax
jne 0x1401057d8
inc dword [rdi + 0x3c]
lea rcx, [rbp*2]
mov rax, qword [rdi + 8]
add rcx, rbp
mov word [rax + rcx*8], 0x37
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], 0
mov rbp, qword [rsp + 0x1e0]
mov rdx, rbx
mov rcx, rbp
call fcn.140114b90
mov r12, qword [rsp + 0xd0]
mov rbx, qword [rbx + 0x28]
inc r14
test rbx, rbx
jne 0x140105771
mov rsi, qword [rsp + 0xf8]
mov r13, qword [rsp + 0x78]
mov r14d, dword [rsp + 0x88]
mov edi, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0x6c]
cmp r15d, dword [rbp + 0x50]
jle 0x14010582d
mov dword [rbp + 0x50], r15d
mov r15, qword [rsp + 0xf0]
test r14d, r14d
je 0x140105907
mov ebp, dword [rsp + 0x64]
mov eax, ebp
sub eax, ecx
mov rcx, qword [rsp + 0xd0]
cdqe
cmp byte [rax + rcx], 0
je 0x1401058cc
test r15, r15
jne 0x1401058cc
mov eax, dword [rsp + 0x80]
lea edx, [r15 + 0x44]
mov r9d, edi
mov dword [rsp + 0x20], eax
mov r8d, ebp
mov rcx, rsi
call fcn.1401089e0
mov r8, qword [rsi + 8]
mov rcx, qword [rsi]
test r8, r8
je 0x1401058cc
cmp byte [rcx + 0x51], r15b
jne 0x1401058cc
test eax, eax
jns 0x140105893
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rdx, [rax + rax*2]
lea rbx, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rbx + 0x10]
call fcn.140087680
mov eax, dword [rsp + 0xc0]
xor r14d, r14d
mov qword [rbx + 0x10], r14
mov dword [rbx + 0x10], eax
mov byte [rbx + 1], 0xf2
jmp 0x1401058cf
mov ecx, dword [rsp + 0x6c]
jmp 0x140105835
xor r14d, r14d
cmp qword [rsp + 0x98], 0
mov r9d, edi
mov r12d, dword [rsp + 0x70]
mov edx, 0x4c
mov r8d, r12d
mov dword [rsp + 0x6c], edi
cmovne r8d, dword [rsp + 0x80]
mov rcx, rsi
mov dword [rsp + 0x20], r14d
call fcn.1401089e0
jmp 0x140105a0c
cmp qword [rsp + 0x98], 0
je 0x140105a47
mov rbx, qword [rsi + 0x30]
movsxd rbp, dword [rbx + 0x78]
lea eax, [rbp + 1]
mov dword [rbx + 0x78], eax
lea eax, [rbp - 1]
test ebp, eax
jne 0x14010594f
mov rdx, qword [rbx + 0x80]
lea eax, [rbp*2 + 1]
mov rcx, qword [rbx]
movsxd r8, eax
shl r8, 2
call fcn.1400d6470
mov qword [rbx + 0x80], rax
mov rcx, qword [rbx + 0x80]
test rcx, rcx
je 0x140105962
mov dword [rcx + rbp*4], 0xffffffff
mov r8d, dword [rsp + 0xc4]
xor r14d, r14d
not ebp
mov dword [rsp + 0x20], r14d
mov r9d, edi
mov dword [rsp + 0x6c], ebp
mov rcx, rsi
lea edx, [r14 + 0x6c]
call fcn.1401089e0
mov edi, dword [rsp + 0x80]
lea edx, [r14 + 0x65]
mov r8d, dword [rsp + 0xc4]
mov r9d, edi
mov rcx, rsi
mov dword [rsp + 0x20], r14d
call fcn.1401089e0
mov r9d, ebp
mov dword [rsp + 0x108], eax
mov ebp, dword [rsp + 0x64]
lea edx, [r14 + 0x44]
mov r8d, ebp
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.1401089e0
mov r8, qword [rsi + 8]
mov rcx, qword [rsi]
test r8, r8
je 0x140105a07
cmp byte [rcx + 0x51], r14b
jne 0x140105a07
test eax, eax
jns 0x1401059e6
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rdx, [rax + rax*2]
lea rbx, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rbx + 0x10]
call fcn.140087680
mov qword [rbx + 0x10], r14
mov byte [rbx + 1], 0xf2
mov r12d, dword [rsp + 0x70]
cmp byte [rsp + 0x60], 0
je 0x140105b1e
mov rax, qword [rsp + 0x118]
test rax, rax
je 0x140105a91
cmp byte [rax], 0x9f
jne 0x140105a91
mov r8d, dword [rax + 0x2c]
mov edx, 0x21
mov rax, qword [rsp + 0x1e0]
mov edi, dword [rsp + 0xa0]
mov rcx, qword [rax + 0x10]
jmp 0x140105ac3
mov r12d, dword [rsp + 0x70]
mov r9d, edi
mov r8d, dword [rsp + 0xec]
mov edx, 0x81
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.1401089e0
mov ebp, dword [rsp + 0x64]
mov r9d, eax
mov r8d, ebp
mov dword [rsp + 0x6c], eax
mov edx, 0x46
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call fcn.1401089e0
xor r14d, r14d
jmp 0x140105a0c
mov rbx, qword [rsp + 0x1e0]
mov rdx, rax
mov edi, dword [rsp + 0xa0]
mov rcx, rbx
mov r8d, edi
call fcn.1400db550
cmp eax, edi
je 0x140105ad0
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x140105ad0
mov r8d, eax
mov edx, 0x22
mov r9d, edi
mov dword [rsp + 0x20], r14d
call fcn.1401089e0
movsxd rbx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov ecx, ebx
cmp dword [rax + 0x60], ebx
jg 0x140105af3
mov edx, 1
mov rcx, rsi
call fcn.1400aad80
test eax, eax
jne 0x140105b1e
mov ecx, dword [rsi + 0x3c]
lea eax, [rcx + 1]
mov dword [rsi + 0x3c], eax
lea rcx, [rbx + rbx*2]
mov rax, qword [rsi + 8]
mov word [rax + rcx*8], 0x26
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r14
cmp byte [rsp + 0x8c], 0
jne 0x140105d32
cmp dword [rsp + 0x84], 0
jne 0x140105d40
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x140105cc1
mov r15d, r14d
mov eax, dword [rsp + 0x200]
xor r9d, r9d
mov r8, qword [rsp + 0x1f0]
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x1e0]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 3
call fcn.140103e80
xor ecx, ecx
or r15d, eax
mov ebx, ecx
cmp cx, word [r13 + 0x3e]
jge 0x140105c50
mov r12d, dword [rsp + 0xb0]
mov edx, 1
mov edi, edx
mov r14d, ecx
nop word [rax + rax]
cmp r15d, 0xffffffff
je 0x140105d58
cmp ebx, 0x20
jge 0x140105bc8
test r15d, edi
jne 0x140105d58
mov rax, qword [r13 + 8]
test byte [rax + r14 + 0x2b], 1
jne 0x140105d58
movsxd rbp, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov ecx, ebp
cmp dword [rax + 0x60], ebp
jg 0x140105bf6
mov rcx, rsi
call fcn.1400aad80
test eax, eax
jne 0x140105c2d
mov ecx, dword [rsi + 0x3c]
lea eax, [rcx + 1]
mov dword [rsi + 0x3c], eax
lea rcx, [rbp*2]
mov rax, qword [rsi + 8]
add rcx, rbp
mov word [rax + rcx*8], 0x1c
mov byte [rax + rcx*8 + 3], 0
lea rdx, [rax + rcx*8]
xor ecx, ecx
lea eax, [rbx + r12]
mov dword [rdx + 4], ecx
mov dword [rdx + 8], eax
mov dword [rdx + 0xc], ecx
mov qword [rdx + 0x10], rcx
mov ebp, dword [rsp + 0x64]
movsx eax, word [r13 + 0x3e]
inc ebx
rol edi, 1
add r14, 0x30
mov edx, 1
cmp ebx, eax
jl 0x140105bb0
mov r12d, dword [rsp + 0x70]
cmp byte [rsp + 0x60], 0
jne 0x140105cb9
cmp qword [rsp + 0x98], 0
jne 0x140105cb9
movsxd rbx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov ecx, ebx
cmp dword [rax + 0x60], ebx
jg 0x140105c85
mov edx, 1
mov rcx, rsi
call fcn.1400aad80
test eax, eax
jne 0x140105cb9
mov ecx, dword [rsi + 0x3c]
mov edx, dword [rsp + 0xa0]
lea eax, [rcx + 1]
mov dword [rsi + 0x3c], eax
lea rcx, [rbx + rbx*2]
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 8], edx
xor edx, edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r12d
mov rdx, qword [rsp + 0xb8]
mov r12d, dword [rsp + 0x200]
mov r15d, 1
mov r14, qword [rsp + 0x1f0]
mov r9d, r15d
mov rbx, qword [rsp + 0x1e0]
mov r8, r14
mov dword [rsp + 0x30], r12d
mov rcx, rbx
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], r15d
call fcn.140103e80
xor r8d, r8d
mov dword [rsp + 0xec], eax
mov ecx, eax
cmp r8w, word [r13 + 0x3e]
jge 0x140105ebe
mov edi, dword [rsp + 0xe0]
mov r10d, r15d
mov r12, qword [rsp + 0xa8]
mov r13d, edi
mov rdx, qword [rsp + 0x78]
neg r13d
jmp 0x140105d86
cmp dword [rsp + 0x84], 0
je 0x140105b4b
mov rcx, qword [rsp + 0x1e0]
mov rdx, r13
call fcn.1400e15b0
mov r15d, eax
jmp 0x140105b4e
lea eax, [rbx + r12]
mov r9d, ebx
mov r8d, ebp
mov dword [rsp + 0x20], eax
mov rdx, r13
mov rcx, rsi
call fcn.1400dae00
jmp 0x140105c31
mov r10d, 1
movsx eax, word [rdx + 0x3c]
lea r9d, [rdi + r13]
cmp r9d, eax
jne 0x140105df1
movsxd rbx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov ecx, ebx
cmp dword [rax + 0x60], ebx
jg 0x140105dc0
mov edx, r10d
mov rcx, rsi
call fcn.1400aad80
mov rdx, qword [rsp + 0x78]
xor r8d, r8d
test eax, eax
jne 0x140105e7f
mov ecx, dword [rsi + 0x3c]
lea eax, [rcx + 1]
mov dword [rsi + 0x3c], eax
mov rax, qword [rsi + 8]
lea rcx, [rbx + rbx*2]
mov word [rax + rcx*8], 0x1c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
jmp 0x140105e7f
movsxd rax, dword [r12]
test eax, eax
js 0x140106013
lea rcx, [rax + rax*4]
mov rax, qword [r14 + 8]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x140105fa0
cmp byte [rdx], 0x9f
jne 0x140105fa0
mov rbx, qword [rbx + 0x10]
mov r14d, dword [rdx + 0x2c]
mov rax, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
cmp dword [rax + 0x60], ebp
jg 0x140105e42
mov edx, r10d
mov rcx, rbx
call fcn.1400aad80
xor r8d, r8d
test eax, eax
jne 0x140105e72
inc dword [rbx + 0x3c]
lea rcx, [rbp*2]
mov rax, qword [rbx + 8]
add rcx, rbp
mov word [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov r14, qword [rsp + 0x1f0]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x1e0]
movsx eax, word [rdx + 0x3e]
inc edi
mov ebp, dword [rsp + 0x64]
add r12, 4
rol r15d, 1
lea ecx, [rdi + r13]
cmp ecx, eax
mov ecx, dword [rsp + 0xec]
jl 0x140105d80
mov r12d, dword [rsp + 0x200]
mov r15d, 1
mov r13, qword [rsp + 0x78]
test byte [rsp + 0xdc], 1
je 0x1401061be
mov r14d, dword [rsp + 0xe0]
mov rdx, r13
mov r8d, r14d
mov rcx, rsi
call fcn.140103a30
mov rax, qword [rsp + 0xb8]
mov edi, dword [rsp + 0x6c]
mov rbx, rax
mov ebp, dword [rsp + 0x70]
test rax, rax
je 0x140105f5f
mov r14, qword [rsp + 0x1e0]
mov rsi, qword [rsp + 0x1f0]
nop word [rax + rax]
cmp byte [rbx + 0x10], 0x6e
jne 0x140105f46
cmp byte [rbx + 0x11], 1
jne 0x140105f46
mov rcx, qword [rbx + 0x20]
mov rdx, rsi
call fcn.1400757c0
test eax, eax
je 0x140105f46
mov dword [rsp + 0x28], edi
mov r9d, ebp
mov r8, r13
mov dword [rsp + 0x20], r12d
mov rdx, rbx
mov rcx, r14
call fcn.1400d2af0
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x140105f10
mov rsi, qword [rsp + 0xf8]
mov r14d, dword [rsp + 0xe0]
cmp qword [rsp + 0x98], 0
mov rax, qword [rsi + 0x30]
movsxd rbx, dword [rsi + 0x3c]
mov ecx, dword [rax + 0x60]
mov eax, ebx
je 0x14010611f
cmp ecx, ebx
jg 0x140106098
mov edx, r15d
mov rcx, rsi
call fcn.1400aad80
test eax, eax
je 0x140106095
mov ebx, r15d
xor edi, edi
jmp 0x1401060ce
mov r8d, edi
mov rcx, rbx
call fcn.1400db550
mov r14d, eax
cmp eax, edi
je 0x140106080
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x140106078
mov rcx, qword [rbx + 0x30]
movsxd rbp, dword [rbx + 0x3c]
cmp dword [rcx + 0x60], ebp
jg 0x140105fe5
mov edx, 1
mov rcx, rbx
call fcn.1400aad80
test eax, eax
jne 0x140106078
inc dword [rbx + 0x3c]
lea rcx, [rbp*2]
mov rax, qword [rbx + 8]
add rcx, rbp
xor r8d, r8d
mov word [rax + rcx*8], 0x22
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], edi
jmp 0x140105e68
mov eax, dword [rsp + 0xdc]
and eax, 1
test al, al
je 0x14010605c
cmp r9d, 0x1f
jg 0x14010605c
test ecx, r15d
jne 0x14010605c
mov rax, qword [rsi + 0x30]
movsxd rbx, dword [rsi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x140106054
mov edx, r10d
mov rcx, rsi
call fcn.1400aad80
xor r8d, r8d
test eax, eax
jne 0x140105e7a
mov rdx, qword [rsp + 0x78]
inc dword [rsi + 0x3c]
jmp 0x140105dc6
mov r8d, ebp
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.1400dae00
mov rdx, qword [rsp + 0x78]
xor r8d, r8d
jmp 0x140105e87
xor r8d, r8d
jmp 0x140105e72
mov rdx, qword [rsp + 0x78]
xor r8d, r8d
mov r14, qword [rsp + 0x1f0]
jmp 0x140105e87
mov eax, dword [rsi + 0x3c]
mov edx, dword [rsp + 0x64]
lea rcx, [rbx + rbx*2]
inc eax
mov dword [rsi + 0x3c], eax
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 8], edi
xor edi, edi
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x80]
mov qword [rax + rcx*8 + 0x10], rdi
mov word [rax + rcx*8], 0x44
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], edx
mov r8, qword [rsi + 8]
mov rcx, qword [rsi]
test r8, r8
je 0x140106164
cmp byte [rcx + 0x51], 0
jne 0x140106164
test ebx, ebx
jns 0x1401060f1
mov ebx, dword [rsi + 0x3c]
dec ebx
movsxd rax, ebx
lea rdx, [rax + rax*2]
lea rbx, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rbx + 0x10]
call fcn.140087680
mov eax, dword [rsp + 0xc0]
mov qword [rbx + 0x10], rdi
mov dword [rbx + 0x10], eax
mov byte [rbx + 1], 0xf2
jmp 0x140106164
cmp ecx, ebx
jg 0x140106135
mov edx, r15d
mov rcx, rsi
call fcn.1400aad80
test eax, eax
jne 0x140106164
mov eax, dword [rsi + 0x3c]
mov edx, dword [rsp + 0x64]
lea rcx, [rbx + rbx*2]
inc eax
mov dword [rsi + 0x3c], eax
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 4], edx
xor edx, edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 0x46
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
xor eax, eax
mov ebx, eax
cmp ax, word [r13 + 0x3e]
jge 0x1401061c0
mov rdi, qword [rsp + 0xa8]
mov r12d, dword [rsp + 0x64]
nop dword [rax]
cmp dword [rdi], 0
jge 0x1401061a7
movsx eax, word [r13 + 0x3c]
cmp ebx, eax
je 0x1401061a7
lea eax, [r14 + rbx]
mov r9d, ebx
mov r8d, r12d
mov dword [rsp + 0x20], eax
mov rdx, r13
mov rcx, rsi
call fcn.1400dae00
movsx eax, word [r13 + 0x3e]
inc ebx
add rdi, 4
cmp ebx, eax
jl 0x140106180
mov r12d, dword [rsp + 0x200]
xor eax, eax
cmp qword [rsp + 0xf0], 0
mov r14d, dword [rsp + 0x6c]
mov r15d, dword [rsp + 0x70]
jne 0x1401064a9
mov rbp, qword [rsp + 0x1e0]
mov edi, eax
mov ebx, dword [rsp + 0xa0]
mov rdx, r13
mov r9d, dword [rsp + 0x64]
mov rcx, rbp
mov r8, qword [rsp + 0x110]
mov dword [rsp + 0xb0], eax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x50], rax
movzx eax, byte [rsp + 0x68]
mov dword [rsp + 0x48], r14d
mov byte [rsp + 0x40], r12b
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
call fcn.1400e9460
cmp dword [rsp + 0x84], 0
je 0x140106270
mov eax, dword [rsp + 0xe4]
xor r9d, r9d
mov dword [rsp + 0x28], eax
mov r8d, r15d
mov rax, qword [rsp + 0xa8]
mov rdx, r13
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.1400e04e0
mov ebp, dword [rsp + 0xb0]
test ebp, ebp
jne 0x140106286
cmp byte [rsp + 0x68], bpl
je 0x140106366
cmp qword [rsp + 0x98], 0
je 0x14010634b
movsxd rdi, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov ecx, edi
cmp dword [rax + 0x60], edi
jg 0x1401062bf
mov edx, 1
mov rcx, rsi
call fcn.1400aad80
test eax, eax
je 0x1401062bc
mov edi, 1
jmp 0x1401062f8
mov ecx, dword [rsi + 0x3c]
mov edx, dword [rsp + 0x64]
lea eax, [rcx + 1]
mov dword [rsi + 0x3c], eax
lea rcx, [rdi + rdi*2]
mov rax, qword [rsi + 8]
xor r8d, r8d
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x80]
mov dword [rax + rcx*8 + 0xc], edx
mov word [rax + rcx*8], 0x44
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov r8, qword [rsi + 8]
mov eax, edi
mov rcx, qword [rsi]
test r8, r8
je 0x140106366
cmp byte [rcx + 0x51], 0
jne 0x140106366
test edi, edi
jns 0x140106315
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rdx, [rax + rax*2]
lea rbx, [r8 + rdx*8]
movsx edx, byte [r8 + rdx*8 + 1]
mov r8, qword [rbx + 0x10]
call fcn.140087680
xor eax, eax
mov byte [rbx + 1], 0xf2
mov qword [rbx + 0x10], rax
mov eax, dword [rsp + 0xc0]
mov dword [rbx + 0x10], eax
mov ebx, dword [rsp + 0xa0]
jmp 0x140106366
mov r8d, dword [rsp + 0x64]
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], r15d
lea edx, [r9 + 0x46]
call fcn.1401089e0
mov edi, eax
mov rax, qword [rsp + 0x110]
mov rdx, r13
mov r9d, dword [rsp + 0x90]
mov r8d, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x1e0]
mov qword [rsp + 0x20], rax
call fcn.1400eb0f0
mov r8d, dword [rsp + 0x84]
test r8d, r8d
jne 0x1401063b1
movzx eax, byte [rsp + 0x68]
test al, al
jne 0x1401063b1
cmp qword [rsp + 0x98], 0
je 0x1401063d7
mov r8d, dword [rsp + 0x64]
xor eax, eax
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov rcx, rsi
lea edx, [rax + 0x5f]
call fcn.1401089e0
mov r8d, dword [rsp + 0x84]
movzx eax, byte [rsp + 0x68]
test ebp, ebp
jne 0x1401063df
test al, al
je 0x140106401
mov edx, dword [rsi + 0x3c]
cmp edx, edi
jbe 0x1401063f7
mov eax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
lea ecx, [rdx - 1]
mov dword [rax + 0x64], ecx
mov ebp, dword [rsp + 0xe4]
mov rdi, qword [rsp + 0x1e0]
test r8d, r8d
je 0x140106437
mov rax, qword [rsp + 0xa8]
mov r9d, ebx
mov dword [rsp + 0x28], ebp
xor r8d, r8d
mov rdx, r13
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.1400e04e0
mov r9d, dword [rsp + 0x90]
xor eax, eax
mov r8d, dword [rsp + 0x64]
mov rdx, r13
mov dword [rsp + 0x40], eax
mov rcx, rdi
mov dword [rsp + 0x38], eax
mov eax, 1
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
call fcn.1400d41a0
cmp dword [rsp + 0x84], 0
mov rbx, qword [rsp + 0x1f0]
je 0x1401064b9
mov rax, qword [rsp + 0xa8]
mov r9d, r15d
mov dword [rsp + 0x28], ebp
mov r8, rbx
mov rdx, r13
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.1400e03f0
jmp 0x1401064b9
mov rdi, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x1f0]
mov rbp, qword [rsp + 0x100]
test byte [rbp + 0x2c], 0x80
je 0x1401064ee
cmp qword [rdi + 0x1c8], 0
jne 0x1401064ee
mov r8d, dword [rsp + 0xe8]
xor eax, eax
mov rcx, rsi
mov dword [rsp + 0x20], eax
lea r9d, [rax + 1]
lea edx, [rax + 0x25]
call fcn.1401089e0
mov rdx, qword [rsp + 0xb8]
mov r9, rbx
mov dword [rsp + 0x40], r14d
mov r8d, WSASetLastError
mov dword [rsp + 0x38], r12d
mov rcx, rdi
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 2
call fcn.1400d2a20
cmp dword [rsp + 0x88], 0
jne 0x14010659f
cmp qword [rsp + 0x98], 0
je 0x140106588
mov r9, qword [rsi + 0x30]
not r14d
test r14d, r14d
js 0x140106559
mov rdx, qword [r9 + 0x80]
test rdx, rdx
je 0x140106559
mov eax, dword [rsi + 0x3c]
movsxd rcx, r14d
mov dword [rdx + rcx*4], eax
mov eax, dword [rsi + 0x3c]
xor r14d, r14d
mov r8d, dword [rsp + 0xc4]
dec eax
mov dword [r9 + 0x64], eax
mov rcx, rsi
mov r9d, dword [rsp + 0x108]
lea edx, [r14 + 9]
mov dword [rsp + 0x20], r14d
call fcn.1401089e0
jmp 0x1401065a2
xor eax, eax
mov r9d, r14d
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, rsi
lea edx, [rax + 0x10]
call fcn.1401089e0
xor r14d, r14d
movsxd rax, dword [rsp + 0xcc]
mov r8, qword [rsi + 0x30]
test eax, eax
js 0x1401065c7
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x1401065c7
mov rcx, rax
mov eax, dword [rsi + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsi + 0x3c]
dec eax
mov dword [r8 + 0x64], eax
mov rbx, qword [r13 + 0x10]
test rbx, rbx
je 0x14010662a
mov rdi, qword [rsp + 0xd0]
mov ebp, dword [rsp + 0x90]
inc rdi
nop dword [rax + rax]
cmp byte [rdi], 0
je 0x14010660c
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov r8d, ebp
mov rcx, rsi
lea edx, [r9 + 0x3d]
call fcn.1401089e0
mov rbx, qword [rbx + 0x28]
inc ebp
inc rdi
test rbx, rbx
jne 0x1401065f0
mov rdi, qword [rsp + 0x1e0]
mov rbp, qword [rsp + 0x100]
mov eax, dword [rsp + 0x64]
cmp eax, dword [rsp + 0x90]
jge 0x14010664e
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov r8d, eax
mov rcx, rsi
lea edx, [r9 + 0x3d]
call fcn.1401089e0
cmp byte [rdi + 0x1e], 0
jne 0x140106666
cmp qword [rdi + 0x1c8], 0
jne 0x140106666
mov rcx, rdi
call fcn.1400cce40
test byte [rbp + 0x2c], 0x80
je 0x1401066cc
cmp qword [rdi + 0x1c8], 0
jne 0x1401066cc
cmp byte [rdi + 0x1e], 0
jne 0x1401066cc
mov r8d, dword [rsp + 0xe8]
mov ebx, 1
mov r9d, ebx
mov dword [rsp + 0x20], r14d
mov rcx, rsi
lea edx, [rbx + 0x22]
call fcn.1401089e0
mov edx, ebx
mov rcx, rsi
call fcn.140114a40
mov rax, qword [rsi]
cmp byte [rax + 0x51], 0
jne 0x1401066cc
mov rcx, qword [rsi + 0x20]
lea r8d, [rbx - 2]
movzx r9d, bl
mov qword [rsp + 0x20], r14
lea rdx, str.rows_updated
call fcn.140113140
mov rax, qword [rsp + 0x130]
test rax, rax
je 0x1401066e8
mov rcx, qword [rsp + 0x138]
mov qword [rax + 0x230], rcx
mov r14, qword [rsp + 0x100]
cmp qword [r14 + 0x328], 0
je 0x14010670f
mov rdx, qword [rsp + 0xa8]
mov rcx, r14
call fcn.1400ae450
jmp 0x14010679e
mov rbx, qword [rsp + 0xa8]
cmp rbx, qword [r14 + 0x170]
jb 0x140106743
cmp rbx, qword [r14 + 0x178]
jae 0x140106743
mov rax, qword [r14 + 0x168]
mov qword [rbx], rax
dec dword [r14 + 0x154]
mov qword [r14 + 0x168], rbx
jmp 0x14010679e
cmp dword [0x1402fd010], 0
je 0x140106795
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x14010675e
call qword [0x1402fd098]
mov rcx, rbx
call qword [0x1402fd050]
dec qword [0x140303428]
movsxd rcx, eax
sub qword [0x1403033e0], rcx
mov rcx, rbx
call qword [0x1402fd040]
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x14010679e
call qword [0x1402fd0a8]
jmp 0x14010679e
mov rcx, rbx
call qword [0x1402fd040]
mov r12, qword [rsp + 0x1a0]
mov rdi, qword [rsp + 0x1a8]
mov rsi, qword [rsp + 0x1b0]
mov r13, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x1e8]
mov rcx, r14
call fcn.140101fa0
mov rdx, qword [rsp + 0x1f0]
mov rcx, r14
call fcn.1400dda80
mov rdx, qword [rsp + 0x1f8]
mov rcx, r14
call fcn.1400dcc80
add rsp, 0x1b8
pop r15
pop r14
pop rbp
pop rbx
ret