Function at 0x140116cb0
Capabilities:
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 rbp
push rbx
push r15
lea rbp, [rax - 0x118]
sub rsp, 0x200
mov qword [rax - 0x20], rsi
mov rbx, r9
mov qword [rax - 0x38], r13
mov rsi, r8
mov r13, rcx
mov qword [rax - 0x40], r14
xor ecx, ecx
mov dword [rbp + 4], 0xffffffff
mov r14, rdx
mov dword [rbp], ecx
mov qword [rbp + 0x70], rcx
mov r15, qword [r13]
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x68], rcx
mov dword [rbp - 0x34], ecx
mov dword [rbp - 0x4c], ecx
mov word [rbp - 0x38], cx
mov dword [rbp - 0x1c], ecx
mov dword [rbp - 4], 1
mov dword [rbp + 0x10], ecx
mov dword [rsp + 0x7c], ecx
mov dword [rbp - 0x68], ecx
mov dword [rbp - 0x20], ecx
mov dword [rbp + 0x58], ecx
mov dword [rbp - 0x5c], ecx
mov dword [rbp - 0x70], ecx
mov qword [rbp + 0x88], rcx
mov qword [rbp + 0x80], rcx
cmp dword [r13 + 0x34], ecx
jne 0x140119473
mov rcx, r13
mov qword [rax - 0x30], r12
call fcn.140113f90
mov qword [rbp - 0x28], rax
mov r12, rax
test rax, rax
je 0x14011946b
mov rdx, qword [rax + 0x60]
xor r8d, r8d
mov qword [rsp + 0x1f0], rdi
mov edi, 0xffff8000
mov dword [rbp - 0x48], edi
test rdx, rdx
je 0x140116dae
mov rax, qword [r13]
mov edi, r8d
mov dword [rbp - 0x48], r8d
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x140116dae
nop dword [rax + rax]
inc edi
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x140116da0
mov dword [rbp - 0x48], edi
cmp qword [r12 + 0x58], 0
jne 0x140116dce
mov rax, qword [r13]
mov rcx, qword [rax + 0x20]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x140116dd8
cmp qword [rax + 0x40], 0
je 0x140116dd8
cmp byte [r13 + 0xe5], 0
je 0x140116de5
mov rbx, r8
mov dword [rbp - 8], r8d
mov qword [rbp - 0x18], rbx
jmp 0x140116e12
lea rax, [rbp - 8]
mov r9, rsi
mov r8d, 0x82
mov qword [rsp + 0x20], rax
mov rdx, r12
mov rcx, r13
call fcn.140137d60
mov rbx, rax
mov qword [rbp - 0x18], rax
mov eax, dword [rbp - 8]
xor r8d, r8d
mov dword [rbp - 8], eax
cmp dword [r14], 1
movzx ecx, byte [r12 + 0x3f]
mov byte [rsp + 0x70], cl
jle 0x140116e29
mov eax, dword [rsi]
mov dword [rbp - 0x6c], eax
jmp 0x140116e2d
mov dword [rbp - 0x6c], r8d
cmp cl, 1
je 0x140116e3b
cmp word [r12 + 0x36], 0
jg 0x140116e4e
mov rdx, r12
mov rcx, r13
call fcn.14013e7f0
test eax, eax
jne 0x14011945c
mov r8, rbx
mov rdx, r12
mov rcx, r13
call fcn.1400fede0
test eax, eax
jne 0x14011945c
mov r9d, dword [r13 + 0x38]
mov edx, r9d
mov dword [rsp + 0x74], r9d
mov dword [rbp - 0x10], edx
lea r14d, [r9 + 1]
mov dword [r13 + 0x38], r14d
test byte [r12 + 0x30], 0x80
mov dword [rbp - 0xc], r14d
jne 0x140116e92
xor eax, eax
mov r10d, eax
mov qword [rbp - 0x40], rax
jmp 0x140116ea3
mov rcx, r12
call fcn.14010aa40
mov r10, rax
mov qword [rbp - 0x40], rax
xor eax, eax
mov rcx, qword [r12 + 0x10]
mov r8d, eax
mov dword [rbp - 0x2c], eax
test rcx, rcx
je 0x140116ee9
mov edx, r14d
nop word [rax + rax]
cmp r10, rcx
mov eax, edx
cmovne eax, r9d
inc edx
mov dword [r13 + 0x38], edx
inc r8d
mov rcx, qword [rcx + 0x28]
mov r9d, eax
test rcx, rcx
jne 0x140116ec0
mov edx, dword [rbp - 0x10]
mov dword [rbp - 0x2c], r8d
mov dword [rsp + 0x74], eax
mov r14, qword [rbp + 0x158]
test r14, r14
je 0x140116f09
mov r9d, dword [r14 + 0x4c]
mov eax, dword [r14 + 0x50]
mov dword [rsp + 0x74], r9d
mov dword [rbp - 0xc], eax
mov dword [r13 + 0x38], edx
mov rax, qword [rbp + 0x128]
mov rcx, r15
movsxd rbx, r8d
mov dword [rax + 0x28], r9d
movsx eax, word [r12 + 0x36]
inc eax
add eax, r8d
cdqe
lea rdx, [rax*4 + 2]
add rdx, rbx
call fcn.1400ea610
mov qword [rbp - 0x58], rax
mov r15, rax
test rax, rax
je 0x140119451
movsx rax, word [r12 + 0x36]
lea r8, [rbx + 1]
mov edx, 1
lea rax, [r15 + rax*4]
lea rsi, [rax + 4]
mov qword [rbp + 0x18], rax
lea rsi, [rsi + rbx*4]
mov rcx, rsi
mov qword [rbp + 0x20], rsi
call fcn.1401585e8
xor r11d, r11d
mov byte [rbx + rsi + 1], 0
mov ecx, r11d
cmp r11w, word [r12 + 0x36]
jge 0x140116fa7
nop word [rax + rax]
movsxd rax, ecx
inc ecx
mov dword [r15 + rax*4], 0xffffffff
movsx eax, word [r12 + 0x36]
cmp ecx, eax
jl 0x140116f90
mov rax, qword [rbp + 0x128]
xorps xmm0, xmm0
mov qword [rbp + 0x98], rax
mov rax, qword [r13 + 0x10]
mov qword [rbp + 0xbc], r11
mov dword [rbp + 0xc4], r11d
mov qword [rbp + 0x90], r13
mov qword [rbp + 0xa0], r14
mov dword [rbp + 0xb8], 0x200
mov qword [rbp - 0x78], rax
movdqu xmmword [rbp + 0xa8], xmm0
test rax, rax
jne 0x140117023
cmp qword [r13 + 0xb0], r11
jne 0x14011700b
mov rax, qword [r13]
test byte [rax + 0x60], 8
jne 0x14011700b
mov byte [r13 + 0x23], 1
mov rcx, r13
call fcn.14011aea0
mov qword [rbp - 0x78], rax
test rax, rax
je 0x140117326
xor r11d, r11d
mov rax, qword [rbp + 0x130]
xor dl, dl
xor sil, sil
mov byte [rbp - 0x80], dl
mov byte [rsp + 0x78], sil
mov r14d, r11d
cmp dword [rax], 0
jle 0x140117295
movsxd r15, edi
mov rsi, rax
movsxd rax, r14d
lea rdx, [0x140171c70]
shl rax, 5
xor dil, dil
mov rcx, qword [rax + rsi + 0x10]
test rcx, rcx
je 0x140117082
movzx eax, byte [rcx]
test al, al
je 0x140117082
nop dword [rax + rax]
movzx eax, al
lea rcx, [rcx + 1]
add dil, byte [rax + rdx]
movzx eax, byte [rcx]
test al, al
jne 0x140117070
cmp dword [rbp - 0x6c], 0
jne 0x1401170b2
movsxd rdx, r14d
lea rcx, [rbp + 0x90]
shl rdx, 5
mov rdx, qword [rdx + rsi + 8]
call fcn.14010cdd0
test eax, eax
jne 0x140117361
lea rdx, [0x140171c70]
xor r11d, r11d
xor eax, eax
mov ebx, eax
cmp ax, word [r12 + 0x36]
jge 0x1401171b0
mov r10, qword [r12 + 8]
movsxd rax, r14d
shl rax, 5
add rsi, rax
cmp byte [r10 + 0xe], dil
jne 0x14011714c
mov r8, qword [r10]
mov r9, qword [rsi + 0x10]
sub r9, r8
movzx ecx, byte [r8]
movzx eax, byte [r8 + r9]
cmp ecx, eax
jne 0x14011712a
test ecx, ecx
jne 0x140117140
movsx eax, word [r12 + 0x34]
cmp r11d, eax
jne 0x14011716d
mov rsi, qword [rbp + 0x130]
mov rdi, qword [rbp - 0x58]
movsxd rax, r14d
shl rax, 5
mov byte [rsp + 0x78], 1
mov dword [rbp + 4], r14d
mov rsi, qword [rax + rsi + 8]
mov qword [rbp + 0x68], rsi
mov dword [rdi + rbx*4], r14d
jmp 0x1401171ba
movzx edx, byte [rax + rdx]
mov rax, rcx
lea rcx, [0x140171c70]
movzx ecx, byte [rax + rcx]
cmp ecx, edx
jne 0x14011714c
inc r8
lea rdx, [0x140171c70]
jmp 0x1401170e1
movzx eax, word [r12 + 0x36]
inc r11d
inc rbx
add r10, 0x18
cmp r11d, eax
jge 0x1401171b6
lea rdx, [0x140171c70]
jmp 0x1401170d1
cmp qword [rbp - 0x40], 0
je 0x140117192
mov rax, qword [r12 + 8]
lea rcx, [rbx + rbx*2]
test byte [rax + rcx*8 + 0x12], 1
je 0x140117192
mov rdi, qword [rbp - 0x58]
mov byte [rbp - 0x80], 1
mov dword [rdi + rbx*4], r14d
jmp 0x1401171ba
mov rcx, qword [r12 + 8]
lea rax, [rbx + rbx*2]
test byte [rcx + rax*8 + 0x12], 0x60
jne 0x140117308
mov rdi, qword [rbp - 0x58]
mov dword [rdi + rbx*4], r14d
jmp 0x1401171ba
mov rdi, qword [rbp - 0x58]
jmp 0x1401171c1
mov rdi, qword [rbp - 0x58]
mov rsi, qword [rbp + 0x130]
movsx eax, word [r12 + 0x36]
cmp r11d, eax
jl 0x140117219
cmp qword [rbp - 0x40], 0
jne 0x140117341
movsxd rcx, r14d
shl rcx, 5
mov rcx, qword [rcx + rsi + 0x10]
call fcn.1400fef20
test eax, eax
je 0x140117341
movsxd rax, r14d
lea r9, str.ROWID
shl rax, 5
mov rbx, 0xffffffffffffffff
mov byte [rsp + 0x78], 1
mov dword [rbp + 4], r14d
mov rsi, qword [rax + rsi + 8]
mov qword [rbp + 0x68], rsi
jmp 0x140117234
test rbx, rbx
jns 0x140117227
lea r9, str.ROWID
jmp 0x140117234
mov rax, qword [r12 + 8]
lea rcx, [rbx + rbx*2]
mov r9, qword [rax + rcx*8]
mov rax, qword [rbp + 0x60]
mov rcx, r15
mov r8, qword [r12]
mov edx, reloc.WS2_32.dll_socket
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rcx, qword [rcx + rax]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.1400dec20
cmp eax, 1
je 0x140117322
cmp eax, 2
jne 0x140117272
mov dword [rdi + rbx*4], 0xffffffff
mov rsi, qword [rbp + 0x130]
inc r14d
xor r11d, r11d
cmp r14d, dword [rsi]
jl 0x140117049
movzx edx, byte [rbp - 0x80]
movzx esi, byte [rsp + 0x78]
mov r15, qword [rbp - 0x58]
test byte [r12 + 0x30], 0x60
lea ebx, [rsi + rdx]
mov byte [rsp + 0x79], bl
lea r10, [0x1400a4660]
mov r9d, 0xfffd
je 0x14011742d
nop word [rax + rax]
mov edi, r11d
mov ebx, r11d
cmp r11w, word [r12 + 0x36]
jge 0x140117428
movsxd rax, ebx
cmp dword [r15 + rax*4], 0
jge 0x140117410
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
test byte [rax + rcx*8 + 0x12], 0x60
je 0x140117410
movzx r8d, word [rax + rcx*8 + 0x10]
test r8w, r8w
jne 0x140117379
mov rdx, r11
jmp 0x1401173ab
movsxd rax, r11d
lea rdx, str.cannot_UPDATE_generated_column___s_
lea r8, [rax + rax*2]
mov r8, qword [rcx + r8*8]
mov rcx, r13
call fcn.1400ed030
mov r15, qword [rbp - 0x58]
mov rsi, qword [rbp + 0x130]
mov rdx, r15
mov r15, qword [rbp + 0x60]
mov rcx, r15
call fcn.1400ea480
jmp 0x140119455
movsxd r8, r14d
lea rdx, str.no_such_column:__s
shl r8, 5
mov rcx, r13
mov r8, qword [r8 + rsi + 0x10]
call fcn.1400ed030
mov byte [r13 + 0x1d], 1
mov r15, qword [rbp - 0x58]
mov rdx, r15
mov r15, qword [rbp + 0x60]
mov rcx, r15
call fcn.1400ea480
jmp 0x140119455
cmp byte [r12 + 0x3f], 0
je 0x140117386
mov rdx, r11
jmp 0x1401173ab
mov rdx, qword [r12 + 0x50]
test rdx, rdx
jne 0x140117395
mov rdx, r11
jmp 0x1401173ab
mov rax, r8
cmp dword [rdx], r8d
jge 0x1401173a2
mov rdx, r11
jmp 0x1401173ab
shl rax, 5
mov rdx, qword [rax + rdx - 0x18]
mov qword [rbp + 0x28], r11
xorps xmm0, xmm0
mov dword [rbp + 0x48], r11d
movzx eax, r11w
mov word [rbp + 0x4c], ax
mov word [rbp + 0x4e], r11w
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x50], r15
movdqu xmmword [rbp + 0x38], xmm0
test rdx, rdx
je 0x1401173f2
lea rcx, [rbp + 0x28]
call fcn.14012ac00
movzx eax, word [rbp + 0x4c]
lea r10, [0x1400a4660]
mov r9d, 0xfffd
xor r11d, r11d
test sil, sil
jne 0x1401173fb
and ax, r9w
test ax, ax
je 0x140117410
movsxd rax, ebx
mov edi, 1
mov dword [r15 + rax*4], 0x1869f
movsx eax, word [r12 + 0x36]
inc ebx
cmp ebx, eax
jl 0x1401172d2
test edi, edi
jne 0x1401172c0
movzx ebx, byte [rsp + 0x79]
cmp byte [r12 + 0x3f], 1
mov rax, r11
mov rcx, qword [rbp + 0x128]
mov r8, r15
setne al
movzx r9d, bl
dec rax
mov rdx, r12
mov qword [rcx + 0x30], rax
mov rcx, r13
call fcn.1400f6f60
mov r13d, dword [rbp + 0x140]
mov esi, eax
mov dword [rbp - 0x30], eax
cmp r13d, 5
jne 0x140117472
mov dword [rbp - 0x1c], 1
mov r14, qword [rbp - 0x28]
xor r9d, r9d
mov r12d, r9d
mov rdi, qword [r14 + 0x10]
test rdi, rdi
je 0x140117657
mov r14, qword [rbp + 0x20]
mov r15, qword [rbp + 0x18]
inc r14
mov rdx, qword [rbp + 0x120]
mov r8, qword [rbp - 0x58]
nop
test bl, bl
jne 0x140117639
cmp esi, 1
jg 0x140117639
cmp rdi, qword [rbp - 0x40]
je 0x140117639
mov rdx, qword [rdi + 0x48]
test rdx, rdx
je 0x14011751e
lea rax, [0x1400a4660]
mov qword [rbp + 0x28], r9
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x28]
mov rax, qword [rbp - 0x58]
xorps xmm0, xmm0
mov qword [rbp + 0x50], rax
movdqu xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], 0
call fcn.14012ac00
movzx ecx, word [rbp + 0x4c]
cmp byte [rsp + 0x78], bl
jne 0x140117506
mov eax, 0xfffd
and cx, ax
mov r8, qword [rbp - 0x58]
xor r9d, r9d
test cx, cx
mov eax, r9d
setne al
test eax, eax
jne 0x140117632
mov esi, r9d
mov ebx, r9d
cmp r9w, word [rdi + 0x5e]
jae 0x1401175cc
nop
mov rax, qword [rdi + 8]
movsxd rcx, ebx
movsx rdx, word [rax + rcx*2]
test dx, dx
js 0x14011754c
mov ecx, dword [r8 + rdx*4]
not ecx
shr ecx, 0x1f
jmp 0x1401175ba
mov rax, qword [rdi + 0x50]
xorps xmm0, xmm0
shl rcx, 5
mov qword [rbp + 0x28], r9
movdqu xmmword [rbp + 0x38], xmm0
mov dword [rbp + 0x48], r9d
mov rdx, qword [rax + rcx + 8]
movzx eax, r9w
mov word [rbp + 0x4e], r9w
lea rcx, [0x1400a4660]
mov qword [rbp + 0x30], rcx
mov rcx, qword [rbp - 0x58]
mov qword [rbp + 0x50], rcx
mov word [rbp + 0x4c], ax
test rdx, rdx
je 0x14011759e
lea rcx, [rbp + 0x28]
call fcn.14012ac00
movzx eax, word [rbp + 0x4c]
xor r9d, r9d
cmp byte [rsp + 0x78], 0
jne 0x1401175ad
mov ecx, 0xfffd
and ax, cx
mov r8, qword [rbp - 0x58]
test ax, ax
mov ecx, r9d
setne cl
test ecx, ecx
jne 0x140117603
movzx eax, word [rdi + 0x5e]
inc ebx
cmp ebx, eax
jl 0x140117530
mov rdx, qword [rbp + 0x120]
mov byte [r14], 0
lea rcx, [rdx + 0x3c]
movzx ebx, byte [rsp + 0x79]
inc r12d
mov dword [r15], esi
inc r14
mov rdi, qword [rdi + 0x28]
add r15, 4
mov esi, dword [rbp - 0x30]
test rdi, rdi
jne 0x1401174a0
mov r14, qword [rbp - 0x28]
jmp 0x140117662
mov rdx, qword [rbp + 0x120]
mov esi, dword [rdx + 0x3c]
lea rcx, [rdx + 0x3c]
inc esi
mov dword [rcx], esi
movzx eax, word [rdi + 0x60]
add eax, esi
mov dword [rcx], eax
cmp r13d, 0xb
jne 0x14011764e
cmp byte [rdi + 0x62], 5
jne 0x14011764e
mov dword [rbp - 0x1c], 1
jmp 0x14011764a
mov rdx, qword [rbp + 0x120]
mov esi, dword [rdx + 0x3c]
inc esi
mov dword [rdx + 0x3c], esi
movzx eax, word [rdi + 0x60]
add eax, esi
mov dword [rdx + 0x3c], eax
lea rcx, [rdx + 0x3c]
test esi, esi
jne 0x1401175db
jmp 0x1401175d3
mov rcx, qword [rbp + 0x120]
add rcx, 0x3c
inc dword [rcx]
mov rdx, qword [rbp + 0x18]
mov ecx, dword [rcx]
movsxd rax, r12d
mov dword [rdx + rax*4], ecx
cmp dword [rbp - 0x1c], 0
je 0x14011768c
mov eax, dword [rbp - 0x2c]
mov edx, 1
mov rcx, qword [rbp + 0x20]
inc eax
movsxd r8, eax
call fcn.1401585e8
mov r10, qword [rbp + 0x120]
cmp byte [r10 + 0x1e], 0
jne 0x1401176a5
mov rax, qword [rbp - 0x78]
or dword [rax + 0xc8], 0x10
mov r8, qword [rbp - 0x18]
test r8, r8
jne 0x1401176b7
test esi, esi
jne 0x1401176b7
xor dil, dil
jmp 0x1401176ba
mov dil, 1
mov rax, qword [r10 + 0xb0]
mov rbx, r10
mov r15d, dword [rbp - 0x48]
test rax, rax
cmovne rbx, rax
mov eax, dword [rbx + 0x84]
bt eax, r15d
jb 0x1401176fe
bts eax, r15d
mov dword [rbx + 0x84], eax
cmp r15d, 1
jne 0x1401176fe
mov rcx, rbx
call fcn.140101e20
mov r10, qword [rbp + 0x120]
mov r8, qword [rbp - 0x18]
mov eax, dword [rbx + 0x80]
or byte [rbx + 0x20], dil
bts eax, r15d
mov dword [rbx + 0x80], eax
cmp byte [r14 + 0x3f], 1
je 0x140117788
mov edx, dword [r10 + 0x3c]
mov rcx, qword [rbp + 0x18]
inc edx
cmp byte [rbp - 0x80], 0
movsxd rax, r12d
mov dword [rbp - 0x68], edx
mov dword [rsp + 0x7c], edx
mov eax, dword [rcx + rax*4]
mov dword [rbp - 0x5c], eax
mov dword [r10 + 0x3c], edx
jne 0x140117748
test r8, r8
jne 0x140117748
mov ecx, edx
test esi, esi
je 0x140117759
movsx ecx, word [r14 + 0x36]
lea eax, [rdx + 1]
add ecx, edx
mov dword [rbp + 0x58], eax
mov dword [r10 + 0x3c], ecx
cmp byte [rsp + 0x79], 0
jne 0x140117769
test r8, r8
jne 0x140117769
test esi, esi
je 0x140117775
lea eax, [rcx + 1]
mov dword [rbp - 0x68], eax
mov ecx, eax
mov dword [r10 + 0x3c], eax
movsx eax, word [r14 + 0x36]
lea r8d, [rcx + 1]
add eax, ecx
mov dword [rbp - 0x20], r8d
mov dword [r10 + 0x3c], eax
movzx eax, byte [rsp + 0x70]
cmp al, 2
jne 0x1401177b5
mov rax, qword [r10 + 0x178]
mov qword [rbp + 0x88], rax
mov rax, qword [r14]
mov qword [r10 + 0x178], rax
movzx eax, byte [rsp + 0x70]
mov qword [rbp + 0x80], r10
cmp dword [rbp - 0x6c], 0
jne 0x1401178f8
cmp al, 2
jne 0x1401177fb
mov eax, dword [rsp + 0x74]
mov rdx, r14
mov r9, qword [rbp + 0x148]
mov rcx, r10
mov r8, qword [rbp + 0x138]
mov dword [rsp + 0x28], eax
mov rax, qword [rbp + 0x150]
mov qword [rsp + 0x20], rax
call fcn.140100d20
xor r9d, r9d
mov edi, r9d
mov esi, r9d
jmp 0x14011780c
mov rsi, qword [rbp + 0x150]
xor r9d, r9d
mov rdi, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x138]
test rdx, rdx
je 0x14011790d
mov eax, dword [rbp + 0xb8]
lea r8, [fcn.1400d5320]
mov rcx, qword [rbp + 0x90]
mov ebx, eax
and eax, 0xf7ff6fef
mov qword [rbp + 0x28], rcx
mov dword [rbp + 0xb8], eax
and ebx, 0x8009010
bt eax, 0x13
mov qword [rbp + 0x30], r8
mov qword [rbp + 0x40], r9
lea rax, [0x1400d6ab0]
cmovb rax, r9
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x90]
mov qword [rbp + 0x50], rax
mov eax, dword [rdx + 0x28]
add dword [rcx + 0x13c], eax
mov rcx, qword [rbp + 0x28]
mov rax, qword [rcx]
mov r8d, dword [rax + 0x94]
cmp dword [rcx + 0x13c], r8d
jle 0x14011789e
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
call fcn.1400ed030
jmp 0x140119417
lea rcx, [rbp + 0x28]
call fcn.14012ac00
mov rdx, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x28]
mov eax, dword [rdx + 0x28]
sub dword [rcx + 0x13c], eax
mov ecx, dword [rbp + 0xb8]
mov eax, ecx
and eax, 0x8010
or ecx, ebx
or dword [rdx + 4], eax
cmp dword [rbp + 0xb4], 0
mov dword [rbp + 0xb8], ecx
jg 0x140119417
mov rax, qword [rbp + 0x28]
cmp dword [rax + 0x34], 0
jg 0x140119417
mov r15, qword [rbp - 0x78]
mov qword [rbp - 0x78], r15
jmp 0x140117911
mov rsi, qword [rbp + 0x150]
mov rdi, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x138]
mov r15, qword [rbp - 0x78]
cmp byte [r14 + 0x3f], 1
jne 0x140117959
mov rax, qword [rbp + 0x68]
mov r8, r14
mov r15, qword [rbp - 0x58]
mov rsi, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x120]
mov r9, rsi
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], rdx
mov rdx, qword [rbp + 0x128]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.140138e70
jmp 0x140119422
mov r10, qword [rbp + 0x120]
movabs rcx, 0x100000000
mov rax, qword [rbp + 0x60]
mov r11, qword [rbp + 0x158]
dec dword [r10 + 0x48]
mov ebx, dword [r10 + 0x48]
mov dword [rbp - 0x60], ebx
mov dword [rbp - 0x50], ebx
test qword [rax + 0x30], rcx
je 0x1401179d7
cmp qword [r10 + 0xb8], 0
jne 0x1401179d7
cmp byte [r10 + 0x1e], 0
jne 0x1401179d7
cmp byte [r10 + 0xe3], 0
jne 0x1401179d7
test r11, r11
jne 0x1401179d7
mov eax, dword [r10 + 0x3c]
xor r8d, r8d
inc eax
mov edx, 0x47
mov r9d, eax
mov dword [rbp + 0x10], eax
mov rcx, r15
mov dword [r10 + 0x3c], eax
call fcn.14011a580
mov r10, qword [rbp + 0x120]
mov r11, qword [rbp + 0x158]
mov r9d, dword [rbp - 0x6c]
mov r13d, 0xffffffff
test r9d, r9d
jne 0x140117af1
test byte [r14 + 0x30], 0x80
jne 0x140117af1
mov rdi, qword [rbp - 0x78]
mov esi, dword [rbp - 0x5c]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x140117a32
mov eax, dword [rsp + 0x7c]
mov r9d, esi
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov edx, 0x4b
mov rcx, rdi
call fcn.1400bb2e0
mov r10, qword [rbp + 0x120]
xor r11d, r11d
jmp 0x140117a62
mov edx, dword [rsp + 0x7c]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
xor r11d, r11d
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r11
mov r14d, dword [r10 + 0x38]
mov dword [rbp - 0x64], r14d
lea eax, [r14 + 1]
mov dword [r10 + 0x38], eax
movsxd r15, dword [rdi + 0x90]
mov dword [rbp - 0x48], r15d
cmp dword [rdi + 0x94], r15d
jg 0x140117aaf
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov r8d, r14d
mov edx, 0x75
mov rcx, rdi
call fcn.1400bb2e0
mov r10, qword [rbp + 0x120]
mov r15d, eax
mov dword [rbp - 0x48], eax
xor r11d, r11d
jmp 0x140117ade
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x75
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r11d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r11
cmp qword [rbp + 0x158], 0
je 0x140117cfc
jmp 0x140117ef3
mov rdx, qword [rbp - 0x40]
test rdx, rdx
je 0x140117b03
movzx ecx, word [rdx + 0x5e]
mov dword [rbp - 0x38], ecx
jmp 0x140117b0a
xor eax, eax
mov ecx, eax
mov dword [rbp - 0x38], eax
mov eax, dword [r10 + 0x3c]
movsx ecx, cx
lea r8d, [rax + 1]
inc eax
add eax, ecx
mov dword [rbp - 0x4c], r8d
add eax, r9d
mov dword [rbp - 0x70], eax
mov dword [r10 + 0x3c], eax
test r11, r11
jne 0x140117e05
cmp byte [rsp + 0x70], 2
jne 0x140117b3e
movsx eax, word [r14 + 0x36]
jmp 0x140117b40
xor eax, eax
mov r14d, dword [r10 + 0x38]
lea ebx, [rax + rcx]
add ebx, r9d
mov dword [rbp - 0x64], r14d
lea eax, [r14 + 1]
mov dword [r10 + 0x38], eax
test rdx, rdx
je 0x140117b88
lea edx, [rcx - 1]
movsxd rcx, dword [r15 + 0x90]
add edx, r8d
cmp dword [r15 + 0x94], ecx
jg 0x140117bc3
mov dword [rsp + 0x20], edx
mov r9d, r8d
xor r8d, r8d
mov edx, 0x4b
mov rcx, r15
call fcn.1400bb2e0
xor r9d, r9d
movsxd r15, dword [r15 + 0x90]
mov r10, qword [rbp - 0x78]
mov dword [rbp - 0x48], r15d
cmp dword [r10 + 0x94], r15d
jg 0x140117bf3
mov dword [rsp + 0x20], r9d
mov r8d, r14d
mov r9d, ebx
mov edx, 0x75
mov rcx, r10
call fcn.1400bb2e0
mov r15d, eax
mov dword [rbp - 0x48], eax
jmp 0x140117c23
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140117b8b
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
mov dword [r10 + 0x90], eax
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8], 0x75
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov rax, qword [rbp - 0x40]
test rax, rax
je 0x140117c91
mov rcx, qword [rbp + 0x120]
mov rdx, rax
call fcn.1400ff560
mov r8, rax
test rax, rax
je 0x140117c8d
mov rdx, qword [rbp - 0x78]
mov word [rax + 8], bx
mov rax, qword [rdx]
cmp byte [rax + 0x67], 0
je 0x140117c71
cmp qword [rax + 0x308], 0
jne 0x140117c8d
add dword [r8], r13d
jne 0x140117c8d
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.1400ea6d0
jmp 0x140117c8d
movsxd rax, dword [rdx + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], r8
mov rax, qword [rbp - 0x40]
cmp dword [rbp - 0x6c], 0
je 0x140117cf5
mov r11, qword [rbp + 0x138]
mov r8, rax
mov rcx, qword [rbp + 0x128]
mov edx, r14d
mov r9, qword [rbp + 0x130]
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 0x120]
call fcn.140138950
mov r8d, dword [rbp - 0x4c]
xor r11d, r11d
cmp byte [rsp + 0x70], 2
mov r10, qword [rbp + 0x120]
jne 0x140117e24
mov dword [rsp + 0x74], r14d
jmp 0x140117e24
mov rdi, qword [rbp - 0x78]
mov esi, dword [rbp - 0x5c]
mov rcx, qword [rbp + 0x120]
mov eax, 4
mov r11, qword [rbp + 0x138]
cmp byte [rcx + 0x1e], 0
jne 0x140117d43
cmp qword [rbp - 0x18], 0
jne 0x140117d43
cmp dword [rbp - 0x30], 0
jne 0x140117d43
cmp byte [rsp + 0x79], 0
jne 0x140117d43
cmp dword [rbp - 0x1c], 0
jne 0x140117d43
test r11, r11
je 0x140117d3e
test dword [r11 + 4], 0x400000
jne 0x140117d43
mov eax, listen
mov edx, dword [rbp - 0xc]
xor r9d, r9d
mov dword [rsp + 0x38], edx
mov r8, r11
mov rdx, qword [rbp + 0x128]
mov word [rsp + 0x30], ax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.14012b060
mov qword [rbp + 0x70], rax
test rax, rax
je 0x140119417
mov rbx, qword [rax + 0x28]
movzx r14d, byte [rax + 0x42]
mov rdx, rbx
mov ecx, dword [rax + 0x44]
mov r8d, dword [rsp + 0x74]
and ecx, 1
shr rdx, 0x20
mov qword [rbp + 0x78], rbx
mov qword [rbp + 8], rbx
mov dword [rbp - 0x5c], r14d
mov dword [rbp - 4], ecx
cmp r14d, 1
je 0x140117f2f
mov rcx, qword [rbp + 0x120]
mov rax, qword [rcx + 0xb0]
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x20], 1
cmp r14d, 2
jne 0x140117f2f
xor r11d, r11d
test edx, edx
js 0x140117f32
cmp edx, r8d
je 0x140117f32
sub edx, dword [rbp - 0x10]
mov rcx, qword [rbp + 0x20]
movsxd rax, edx
cmp byte [rax + rcx], r11b
je 0x140117f32
mov r14d, r11d
mov dword [rbp - 0x5c], r11d
jmp 0x140117f32
mov edx, dword [rsp + 0x74]
xor r11d, r11d
mov dword [rbp - 0x64], r11d
mov r15d, r11d
mov dword [rbp - 0x48], r11d
mov dword [rsp + 0x74], edx
test r9d, r9d
je 0x140117eec
mov rax, qword [r10 + 0xb0]
mov rcx, r10
mov rbx, qword [rbp + 8]
test rax, rax
mov r14d, r11d
mov dword [rbp - 0x5c], r11d
cmovne rcx, rax
mov dword [rbp - 0x70], r8d
movsx eax, word [rbp - 0x38]
mov dword [rbp - 0x34], eax
mov byte [rcx + 0x20], 1
mov r15d, dword [rbp - 0x64]
xor r12d, r12d
cmp qword [rbp + 0x158], r12
jne 0x14011857b
cmp dword [rbp - 0x6c], r12d
jne 0x140117e78
cmp r14d, 2
je 0x140117e78
mov rcx, qword [rbp + 0x70]
call fcn.14012ee80
cmp byte [rsp + 0x70], 2
mov esi, dword [rbp + 0xc]
je 0x1401181fb
mov edi, r12d
test r14d, r14d
je 0x140118176
mov edx, dword [rbp - 0x10]
mov rcx, qword [rbp + 0x20]
test ebx, ebx
js 0x140117ea7
mov eax, ebx
sub eax, edx
cdqe
mov byte [rax + rcx], 0
test esi, esi
js 0x140117eb5
mov eax, esi
sub eax, edx
cdqe
mov byte [rax + rcx], 0
cmp r14d, 2
jne 0x140118176
mov ecx, dword [rbp - 0x2c]
mov eax, r12d
mov r12, qword [rbp - 0x78]
test esi, esi
setns al
sub ecx, eax
test ecx, ecx
jle 0x14011817a
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, r12
call fcn.14011a4a0
mov edi, eax
jmp 0x14011817a
mov rdi, qword [rbp - 0x78]
mov esi, dword [rbp - 0x5c]
mov rdx, qword [rbp + 0x138]
mov r14d, 1
mov r9d, reloc.WS2_32.dll_recv
mov dword [rbp - 0x5c], r14d
mov r8d, ebx
mov qword [rbp + 0x70], r11
mov rcx, r10
call fcn.1400f2020
mov rbx, qword [rbp + 8]
xor r11d, r11d
mov r8d, dword [rsp + 0x74]
mov dword [rbp - 4], r11d
mov qword [rbp + 0x78], rbx
jmp 0x140117f32
xor r11d, r11d
mov rax, qword [rbp - 0x28]
test byte [rax + 0x30], 0x80
jne 0x140117ff9
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x140117f6d
mov r9d, dword [rsp + 0x7c]
mov edx, 0x87
mov rcx, rdi
mov dword [rsp + 0x20], r11d
call fcn.1400bb2e0
mov r8d, dword [rsp + 0x7c]
jmp 0x140117fa1
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], r8d
mov r8d, dword [rsp + 0x7c]
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
test r14d, r14d
jne 0x140117fe0
mov rdx, qword [rbp + 0x120]
mov r9d, esi
mov r15d, dword [rbp - 0x64]
movsxd rax, r12d
mov dword [rsp + 0x20], r8d
mov r8d, r15d
mov ecx, dword [rdx + 0x3c]
inc ecx
mov dword [rdx + 0x3c], ecx
mov rdx, qword [rbp + 0x18]
mov dword [rdx + rax*4], ecx
mov edx, 0x80
mov rcx, rdi
call fcn.14011a5f0
jmp 0x140117e53
test r15d, r15d
je 0x140117e4f
mov edx, r15d
mov rcx, rdi
call fcn.14011ac40
jmp 0x140117e4f
mov r12d, dword [rbp - 0x38]
mov edi, r11d
movsx r14d, r12w
test r14d, r14d
jle 0x14011805f
mov r12, qword [rbp - 0x78]
mov rsi, r11
mov ebx, dword [rbp - 0x4c]
mov r13, rax
mov r15d, dword [rsp + 0x74]
nop dword [rax + rax]
mov rax, qword [rbp - 0x40]
lea ecx, [rdi + rbx]
mov dword [rsp + 0x20], ecx
mov r8d, r15d
mov rdx, r13
mov rcx, r12
mov rax, qword [rax + 8]
movsx r9d, word [rsi + rax]
call fcn.1400ee820
inc edi
lea rsi, [rsi + 2]
cmp edi, r14d
jl 0x140118020
mov rbx, qword [rbp + 0x78]
mov r13d, 0xffffffff
mov r15d, dword [rbp - 0x48]
mov r12d, dword [rbp - 0x38]
mov r14d, dword [rbp - 0x5c]
test r14d, r14d
je 0x1401180b8
test r15d, r15d
je 0x1401180a6
mov rdi, qword [rbp - 0x78]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x1401180a6
movsxd rax, r15d
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rdi, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.1400b7fb0
xor eax, eax
mov word [rdi], 0xbb
mov qword [rdi + 0x10], rax
mov esi, dword [rbp - 0x4c]
movsx eax, r12w
mov dword [rbp - 0x34], eax
mov dword [rbp - 0x70], esi
jmp 0x140117e4f
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x1401180d4
mov rcx, qword [rbp + 0x60]
mov rdx, rax
call fcn.1400a92c0
mov rcx, rax
mov rdi, qword [rbp - 0x78]
mov edx, 0x61
mov esi, dword [rbp - 0x4c]
mov r8d, esi
mov r15d, dword [rbp - 0x70]
movsx eax, r12w
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rcx
mov rcx, rdi
movsx r9d, r12w
mov dword [rsp + 0x20], r15d
call fcn.14011a660
movsxd rcx, dword [rdi + 0x90]
movsx edx, r12w
cmp dword [rdi + 0x94], ecx
jg 0x14011813c
mov dword [rsp + 0x28], edx
mov r9d, r15d
mov r15d, dword [rbp - 0x64]
mov edx, 0x8a
mov r8d, r15d
mov dword [rsp + 0x20], esi
mov rcx, rdi
call fcn.14009bbb0
jmp 0x140117e53
mov r15d, dword [rbp - 0x64]
lea eax, [rcx + 1]
mov r8d, dword [rbp - 0x70]
lea rcx, [rcx + rcx*2]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd8a
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], esi
mov dword [rax + rcx*8 + 0x10], edx
jmp 0x140117e53
mov r12, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x28]
lea rax, [rbp + 8]
mov rcx, qword [rbp + 0x120]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov r8d, WSAStartup
lea rax, [rbp - 0x2c]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x10]
mov dword [rsp + 0x20], eax
call fcn.140101b40
test edi, edi
je 0x1401181fb
mov edx, dword [r12 + 0x90]
lea eax, [rdx - 1]
cmp edi, eax
jne 0x1401181d2
mov dword [r12 + 0x90], eax
jmp 0x1401181fb
mov rax, qword [r12]
cmp byte [rax + 0x67], 0
je 0x1401181e5
lea rax, [0x14019e058]
jmp 0x1401181f8
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test r14d, r14d
je 0x1401182ce
mov eax, dword [rsp + 0x74]
cmp ebx, eax
mov ebx, dword [rbp - 0x70]
mov r12d, dword [rbp - 0x60]
je 0x14011823b
cmp esi, eax
mov rsi, qword [rbp - 0x78]
je 0x14011823f
mov ecx, dword [rbp - 0x34]
mov r9d, r12d
mov dword [rsp + 0x28], ecx
mov r8d, eax
mov rcx, rsi
mov dword [rsp + 0x20], ebx
mov edx, 0x1c
call fcn.14011a7a0
jmp 0x14011823f
mov rsi, qword [rbp - 0x78]
cmp r14d, 1
je 0x140118257
mov rcx, qword [rbp + 0x120]
mov eax, dword [rcx + 0x48]
dec eax
mov dword [rbp - 0x50], eax
mov dword [rcx + 0x48], eax
cmp qword [rbp - 0x40], 0
mov edx, dword [rsp + 0x7c]
movsxd rcx, dword [rsi + 0x90]
cmovne edx, ebx
cmp dword [rsi + 0x94], ecx
jg 0x140118294
xor eax, eax
mov r8d, edx
mov edx, 0x33
mov dword [rsp + 0x20], eax
mov r9d, r12d
mov rcx, rsi
call fcn.1400bb2e0
mov r14d, dword [rbp - 0x50]
jmp 0x140118586
mov r14d, dword [rbp - 0x50]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
xor r9d, r9d
mov dword [rax + rcx*8], gethostname
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140118589
mov rdx, qword [rbp - 0x40]
mov ebx, dword [rbp - 0x6c]
test rdx, rdx
jne 0x14011832c
test ebx, ebx
jne 0x14011832c
mov rsi, qword [rbp - 0x78]
mov r8d, r15d
mov r12d, dword [rbp - 0x60]
mov rcx, rsi
mov r9d, r12d
mov edx, 0x24
call fcn.14011a580
mov rdi, qword [rbp + 0x120]
mov r8d, r15d
mov r9d, dword [rsp + 0x7c]
mov edx, 0x87
mov rcx, rsi
mov r14d, dword [rdi + 0x48]
dec r14d
mov dword [rbp - 0x50], r14d
mov dword [rdi + 0x48], r14d
call fcn.14011a580
mov dword [rbp], eax
jmp 0x1401184cf
mov rdi, qword [rbp + 0x120]
mov rsi, qword [rbp - 0x78]
mov r12d, dword [rbp - 0x60]
mov r14d, dword [rdi + 0x48]
dec r14d
mov dword [rdi + 0x48], r14d
movsxd rcx, dword [rsi + 0x90]
mov dword [rbp - 0x50], r14d
cmp dword [rsi + 0x94], ecx
jg 0x14011837b
xor eax, eax
mov r9d, r12d
mov r8d, r15d
mov dword [rsp + 0x20], eax
mov edx, 0x24
mov rcx, rsi
call fcn.1400bb2e0
mov rdx, qword [rbp - 0x40]
xor r9d, r9d
jmp 0x1401183ad
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov eax, dword [rsi + 0x90]
mov dword [rbp], eax
test ebx, ebx
je 0x1401184f4
cmp byte [rsp + 0x70], 2
je 0x140118593
test rdx, rdx
je 0x1401184ba
mov eax, dword [rbp - 0x38]
mov ebx, r9d
movsx edi, ax
test edi, edi
jle 0x14011844c
mov r12d, dword [rbp - 0x4c]
movsxd rcx, dword [rsi + 0x90]
lea edx, [r12 + rbx]
cmp dword [rsi + 0x94], ecx
jg 0x140118412
mov dword [rsp + 0x20], edx
mov r9d, ebx
mov edx, 0x5e
mov r8d, r15d
mov rcx, rsi
call fcn.1400bb2e0
xor r9d, r9d
jmp 0x14011843f
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
inc ebx
cmp ebx, edi
jl 0x1401183e3
mov r12d, dword [rbp - 0x60]
mov eax, dword [rbp - 0x38]
movsxd rcx, dword [rsi + 0x90]
mov r8d, dword [rsp + 0x74]
movsx edx, ax
cmp dword [rsi + 0x94], ecx
jg 0x140118483
mov eax, dword [rbp - 0x4c]
mov r9d, r14d
mov dword [rsp + 0x28], edx
mov rcx, rsi
mov edx, 0x1c
mov dword [rsp + 0x20], eax
call fcn.14009bbb0
jmp 0x140118586
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], r8d
mov r8d, dword [rbp - 0x4c]
mov dword [rax + rcx*8 + 0xc], r8d
mov dword [rax + rcx*8], 0xfd1c
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0x10], edx
jmp 0x140118589
mov r9d, dword [rsp + 0x7c]
mov r8d, r15d
mov edx, 0x87
mov rcx, rsi
call fcn.14011a580
mov eax, dword [rsp + 0x7c]
mov r9d, r14d
mov r8d, dword [rsp + 0x74]
mov edx, 0x1f
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.14011a5f0
xor r9d, r9d
jmp 0x140118593
mov dword [rsp + 0x20], r9d
mov r8d, r15d
mov r9d, dword [rbp - 0x70]
mov edx, 0x86
mov rcx, rsi
call fcn.14011a5f0
movsxd rcx, dword [rsi + 0x90]
mov r8d, dword [rsp + 0x74]
cmp dword [rsi + 0x94], ecx
jg 0x140118543
xor eax, eax
mov r9d, r14d
mov dword [rsp + 0x28], eax
mov edx, 0x1c
mov eax, dword [rbp - 0x70]
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.14009bbb0
xor r9d, r9d
jmp 0x140118593
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], r8d
mov r8d, dword [rbp - 0x70]
mov dword [rax + rcx*8 + 0xc], r8d
mov dword [rax + rcx*8], 0xfd1c
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0x10], r9d
jmp 0x140118593
mov r14d, dword [rbp - 0x50]
mov r12d, r14d
mov rsi, qword [rbp - 0x78]
xor r9d, r9d
mov rdi, qword [rbp + 0x120]
mov ebx, dword [rbp - 0x6c]
cmp byte [rsp + 0x78], 0
je 0x140118655
test ebx, ebx
jne 0x140118698
cmp qword [rdi + 0x10], 0
je 0x140118625
mov rbx, qword [rbp + 0x68]
mov rcx, rdi
mov r8d, dword [rbp - 0x68]
mov rdx, rbx
call fcn.1400efeb0
mov r10d, dword [rbp - 0x68]
mov r8d, eax
cmp eax, r10d
je 0x140118629
test rbx, rbx
je 0x140118614
mov ecx, dword [rbx + 4]
test ecx, 0x82000
je 0x1401185ff
bt ecx, 0x13
jae 0x1401185ec
mov rax, qword [rbx + 0x20]
mov rbx, qword [rax + 8]
jmp 0x1401185f5
cmp byte [rbx], 0x72
jne 0x1401185fa
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x1401185d1
test rbx, rbx
je 0x140118614
test dword [rbx + 4], 0x400000
jne 0x14011860d
cmp byte [rbx], 0xb0
jne 0x140118614
mov edx, 0x50
jmp 0x140118619
mov edx, 0x51
mov rcx, qword [rdi + 0x10]
mov r9d, r10d
call fcn.14011a580
mov r10d, dword [rbp - 0x68]
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140118701
xor eax, eax
xor r9d, r9d
mov r8d, r10d
mov dword [rsp + 0x20], eax
mov edx, reloc.WS2_32.dll_listen
mov rcx, rsi
call fcn.1400bb2e0
xor r9d, r9d
cmp byte [rbp - 0x80], 0
jne 0x140118733
cmp dword [rbp - 0x30], 0
jne 0x14011873d
mov rax, qword [rbp - 0x18]
test rax, rax
je 0x14011899b
mov esi, r9d
mov rax, qword [rbp - 0x28]
mov edi, r9d
mov dword [rbp - 0x2c], esi
cmp byte [rax + 0x3f], 2
jne 0x140118753
mov edi, r13d
jmp 0x1401187d3
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1401186c7
mov edx, dword [rbp - 0x68]
mov r8d, r15d
mov r9d, dword [rbp + 4]
mov rcx, rsi
mov dword [rsp + 0x20], edx
mov edx, 0x5e
call fcn.1400bb2e0
jmp 0x140118625
mov edx, dword [rbp + 4]
lea eax, [rcx + 1]
mov r10d, dword [rbp - 0x68]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140118629
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 4], r10d
mov qword [rax + rcx*8 + 8], r9
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140118658
cmp dword [rbp - 0x30], 0
je 0x140118679
mov rdx, qword [rbp - 0x28]
mov rcx, rdi
call fcn.1400f6e30
mov esi, eax
xor r9d, r9d
jmp 0x14011867c
mov rax, qword [rbp - 0x18]
mov rbx, rax
test rax, rax
je 0x1401187d3
mov r12d, dword [rbp + 0x140]
mov r15, qword [rbp - 0x28]
mov r14, qword [rbp + 0x120]
mov rsi, qword [rbp + 0x130]
cmp byte [rbx + 0x10], 0x82
jne 0x1401187b8
test byte [rbx + 0x11], 3
je 0x1401187b8
mov rcx, qword [rbx + 0x20]
mov rdx, rsi
call fcn.1400a4570
test eax, eax
je 0x1401187b8
cmp byte [rbx + 0x12], 0
je 0x14011879f
mov edi, r13d
jmp 0x1401187b8
mov r9d, r12d
mov r8, r15
mov rdx, rbx
mov rcx, r14
call fcn.1400bb150
test rax, rax
je 0x1401187b8
or edi, dword [rax + 0x1c]
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x140118778
mov esi, dword [rbp - 0x2c]
xor r9d, r9d
mov r14d, dword [rbp - 0x50]
mov r15d, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x60]
or esi, edi
mov ebx, r9d
mov rdi, qword [rbp - 0x28]
cmp r9w, word [rdi + 0x36]
jge 0x140118923
mov r15, qword [rbp - 0x78]
mov r14d, dword [rbp + 0x58]
mov r12d, dword [rsp + 0x74]
nop dword [rax]
nop dword [rax + rax]
test byte [rdi + 0x30], 0x20
mov r8, qword [rdi + 8]
movsxd rax, ebx
lea rcx, [rax + rax*2]
movzx r11d, word [r8 + rcx*8 + 0x12]
je 0x14011887c
test bx, bx
js 0x14011887c
movsx eax, bx
movzx edx, r9w
mov r10d, r9d
test eax, eax
jle 0x140118858
add r8, 0x12
mov r9d, eax
mov r10d, eax
nop dword [rax]
nop dword [rax + rax]
test byte [r8], 0x20
lea ecx, [rdx + 1]
lea r8, [r8 + 0x18]
cmovne cx, dx
movzx edx, cx
sub r9, 1
jne 0x140118840
movsxd rax, r10d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
test byte [rax + rcx*8 + 0x12], 0x20
je 0x140118877
movzx eax, word [rdi + 0x38]
sub ax, dx
add ax, r10w
jmp 0x14011887f
movzx eax, dx
jmp 0x14011887f
movzx eax, bx
movsx edx, ax
add edx, r14d
cmp esi, r13d
je 0x1401188f1
cmp ebx, 0x20
jge 0x140118894
bt esi, ebx
jb 0x1401188f1
test r11b, 1
jne 0x1401188f1
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x1401188c4
mov dword [rsp + 0x20], r9d
xor r8d, r8d
mov r9d, edx
mov rcx, r15
mov edx, 0x4b
call fcn.1400bb2e0
jmp 0x140118906
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140118909
mov dword [rsp + 0x20], edx
mov r9d, ebx
mov rdx, rdi
mov r8d, r12d
mov rcx, r15
call fcn.1400ee820
xor r9d, r9d
movsx eax, word [rdi + 0x36]
inc ebx
cmp ebx, eax
jl 0x140118800
mov r14d, dword [rbp - 0x50]
mov r15d, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x60]
cmp byte [rsp + 0x78], 0
jne 0x140118997
cmp qword [rbp - 0x40], 0
jne 0x140118997
mov r10, qword [rbp - 0x78]
movsxd rcx, dword [r10 + 0x90]
cmp dword [r10 + 0x94], ecx
jg 0x140118962
mov r8d, dword [rsp + 0x7c]
mov edx, 0x50
mov dword [rsp + 0x20], r9d
mov rcx, r10
mov r9d, dword [rbp - 0x68]
call fcn.1400bb2e0
jmp 0x140118997
mov edx, dword [rsp + 0x7c]
lea eax, [rcx + 1]
mov dword [r10 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x68]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x50
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov rax, qword [rbp - 0x18]
mov rbx, qword [rbp - 0x28]
xor r11d, r11d
mov edi, r11d
cmp byte [rbx + 0x3f], 2
je 0x140118a28
mov rbx, rax
test rax, rax
je 0x140118a21
mov r12d, dword [rbp + 0x140]
mov r15, qword [rbp - 0x28]
mov r14, qword [rbp + 0x120]
cmp byte [rbx + 0x10], 0x82
jne 0x140118a09
test byte [rbx + 0x11], 1
je 0x140118a09
mov rdx, qword [rbp + 0x130]
mov rcx, qword [rbx + 0x20]
call fcn.1400a4570
test eax, eax
je 0x140118a09
cmp byte [rbx + 0x12], 0
je 0x1401189f0
mov edi, r13d
jmp 0x140118a09
mov r9d, r12d
mov r8, r15
mov rdx, rbx
mov rcx, r14
call fcn.1400bb150
test rax, rax
je 0x140118a09
or edi, dword [rax + 0x20]
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x1401189c5
mov r14d, dword [rbp - 0x50]
xor r11d, r11d
mov r15d, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x60]
mov rbx, qword [rbp - 0x28]
mov r13d, edi
movzx r9d, word [rbx + 0x36]
mov esi, r11d
mov eax, dword [rbp - 0x20]
mov edi, eax
cmp r11w, r9w
jge 0x140118bf8
mov r12, qword [rbp - 0x78]
mov r14, qword [rbp + 0x120]
nop word [rax + rax]
movsx eax, word [rbx + 0x34]
cmp esi, eax
jne 0x140118a8b
movsxd rcx, dword [r12 + 0x90]
cmp dword [r12 + 0x94], ecx
jg 0x140118cec
mov r9d, edi
mov dword [rsp + 0x20], r11d
xor r8d, r8d
mov edx, 0x4b
mov rcx, r12
call fcn.1400bb2e0
jmp 0x140118bd8
mov rax, qword [rbx + 8]
movsxd rdx, esi
lea rcx, [rdx + rdx*2]
movzx r8d, word [rax + rcx*8 + 0x12]
test r8b, 0x60
je 0x140118ab3
test r8b, 0x20
je 0x140118bdb
dec edi
jmp 0x140118bdb
mov rax, qword [rbp - 0x58]
movsxd rcx, dword [rax + rdx*4]
test ecx, ecx
js 0x140118cc4
cmp dword [rbp - 0x6c], 0
je 0x140118b3f
cmp byte [rsp + 0x70], 2
movzx eax, word [rbp - 0x38]
cmove ax, r9w
movsx edx, ax
add edx, ecx
movsxd rcx, dword [r12 + 0x90]
cmp dword [r12 + 0x94], ecx
jg 0x140118b0a
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x5e
mov r8d, r15d
mov rcx, r12
call fcn.1400bb2e0
jmp 0x140118bd8
lea eax, [rcx + 1]
mov dword [r12 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], r11
jmp 0x140118bdb
cmp qword [r14 + 0x10], 0
je 0x140118bdb
mov rax, rcx
mov r8d, edi
mov rcx, qword [rbp + 0x130]
shl rax, 5
mov rbx, qword [rax + rcx + 8]
mov rcx, r14
mov rdx, rbx
call fcn.1400efeb0
mov r8d, eax
cmp eax, edi
je 0x140118bd4
test rbx, rbx
je 0x140118bc3
nop word [rax + rax]
mov ecx, dword [rbx + 4]
test ecx, 0x82000
je 0x140118bae
bt ecx, 0x13
jae 0x140118b9b
mov rax, qword [rbx + 0x20]
mov rbx, qword [rax + 8]
jmp 0x140118ba4
cmp byte [rbx], 0x72
jne 0x140118ba9
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140118b80
test rbx, rbx
je 0x140118bc3
test dword [rbx + 4], 0x400000
jne 0x140118bbc
cmp byte [rbx], 0xb0
jne 0x140118bc3
mov edx, 0x50
jmp 0x140118bc8
mov edx, 0x51
mov rcx, qword [r14 + 0x10]
mov r9d, edi
call fcn.14011a580
mov rbx, qword [rbp - 0x28]
xor r11d, r11d
movsx r9d, word [rbx + 0x36]
inc esi
inc edi
cmp esi, r9d
jl 0x140118a50
mov r14d, dword [rbp - 0x50]
mov r12d, dword [rbp - 0x60]
mov eax, dword [rbp - 0x20]
mov r13, qword [rbp - 0x28]
mov rsi, qword [rbp + 0x120]
test byte [r13 + 0x30], 0x60
je 0x140118c17
mov r8, r13
mov edx, eax
mov rcx, rsi
call fcn.1400e77d0
test byte [rbp - 8], 1
je 0x140118e6f
mov rdi, qword [rbp - 0x78]
mov rdx, r13
mov r8d, dword [rbp - 0x20]
mov rcx, rdi
call fcn.140115440
mov eax, dword [rsp + 0x7c]
mov r8d, 0x82
mov ebx, dword [rbp + 0x140]
mov rcx, rsi
mov r9, qword [rbp + 0x130]
mov rdx, qword [rbp - 0x18]
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 1
call fcn.1400e6160
cmp byte [rsp + 0x70], 2
je 0x140119250
cmp qword [rbp - 0x40], 0
movsxd rcx, dword [rdi + 0x90]
mov eax, dword [rdi + 0x94]
je 0x140118d74
cmp eax, ecx
jg 0x140118d41
mov eax, dword [rbp - 0x34]
mov r9d, r14d
mov r8d, dword [rsp + 0x74]
mov edx, 0x1c
mov dword [rsp + 0x28], eax
mov rcx, rdi
mov eax, dword [rbp - 0x70]
mov dword [rsp + 0x20], eax
call fcn.14009bbb0
jmp 0x140118dcf
mov eax, dword [rbp - 8]
test al, 1
je 0x140118d1e
cmp esi, 0x1f
jg 0x140118d1e
bt r13d, esi
jb 0x140118d1e
movsxd rcx, dword [r12 + 0x90]
cmp dword [r12 + 0x94], ecx
jle 0x140118a6e
lea eax, [rcx + 1]
mov dword [r12 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
jmp 0x140118bdb
mov r8d, dword [rsp + 0x74]
mov r9d, esi
mov rdx, rbx
mov dword [rsp + 0x20], edi
mov rcx, r12
call fcn.1400ee820
xor r11d, r11d
mov dword [rbp - 4], r11d
jmp 0x140118bdb
mov edx, dword [rsp + 0x74]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x70]
mov dword [rax + rcx*8 + 0xc], edx
mov edx, dword [rbp - 0x34]
mov dword [rax + rcx*8 + 0x10], edx
mov dword [rax + rcx*8], 0xfd1c
jmp 0x140118dca
cmp eax, ecx
jg 0x140118d97
mov eax, dword [rsp + 0x7c]
mov r9d, r14d
mov r8d, dword [rsp + 0x74]
mov edx, 0x1f
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.1400bb2e0
jmp 0x140118dcf
mov edx, dword [rsp + 0x74]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
xor r8d, r8d
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x7c]
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8], 0x1f
mov qword [rax + rcx*8 + 0x10], r8
mov dword [rax + rcx*8 + 8], r14d
mov eax, dword [rbp - 0x20]
xor ecx, ecx
mov ebx, ecx
mov edi, eax
cmp cx, word [r13 + 0x36]
jge 0x140118e59
mov r12, qword [rbp - 0x78]
mov r15, qword [rbp - 0x58]
mov esi, dword [rsp + 0x74]
nop dword [rax + rax]
mov rax, qword [r13 + 8]
movsxd rdx, ebx
lea rcx, [rdx + rdx*2]
movzx r8d, word [rax + rcx*8 + 0x12]
test r8b, 0x60
je 0x140118e15
lea eax, [rdi - 1]
test r8b, 0x20
cmove eax, edi
mov edi, eax
jmp 0x140118e3a
cmp dword [r15 + rdx*4], 0
jge 0x140118e3a
movsx eax, word [r13 + 0x34]
cmp ebx, eax
je 0x140118e3a
mov r9d, ebx
mov dword [rsp + 0x20], edi
mov r8d, esi
mov rdx, r13
mov rcx, r12
call fcn.1400ee820
movsx eax, word [r13 + 0x36]
inc ebx
inc edi
cmp ebx, eax
jl 0x140118df0
mov r15d, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x60]
mov rsi, qword [rbp + 0x120]
mov eax, dword [rbp - 0x20]
test byte [r13 + 0x30], 0x60
je 0x140118e7a
mov r8, r13
mov edx, eax
mov rcx, rsi
call fcn.1400e77d0
jmp 0x140118e7a
cmp byte [rsp + 0x70], 2
je 0x14011920f
movzx esi, byte [rsp + 0x79]
xor eax, eax
mov ebx, dword [rsp + 0x74]
mov rdx, r13
mov r8, qword [rbp + 0x18]
mov r9d, ebx
mov rcx, qword [rbp + 0x120]
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x1c]
mov qword [rsp + 0x50], rax
mov eax, dword [rbp + 0x140]
mov dword [rsp + 0x48], r14d
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0x7c]
mov byte [rsp + 0x38], sil
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x68]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0xc]
mov dword [rsp + 0x20], eax
call fcn.1400f7a70
cmp dword [rbp - 0x1c], 0
jne 0x140118eeb
test sil, sil
je 0x140118fb8
cmp qword [rbp - 0x40], 0
mov rdi, qword [rbp - 0x78]
movsxd rcx, dword [rdi + 0x90]
mov eax, dword [rdi + 0x94]
je 0x140118f61
cmp eax, ecx
jg 0x140118f2d
mov eax, dword [rbp - 0x34]
mov r9d, r14d
mov dword [rsp + 0x28], eax
mov r8d, ebx
mov eax, dword [rbp - 0x70]
mov edx, 0x1c
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.14009bbb0
jmp 0x140118fbc
mov edx, dword [rbp - 0x70]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 0xc], edx
mov edx, dword [rbp - 0x34]
mov dword [rax + rcx*8 + 0x10], edx
mov dword [rax + rcx*8], 0xfd1c
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r14d
jmp 0x140118fbc
cmp eax, ecx
jg 0x140118f82
mov eax, dword [rsp + 0x7c]
mov r9d, r14d
mov r8d, ebx
mov dword [rsp + 0x20], eax
mov edx, 0x1f
mov rcx, rdi
call fcn.1400bb2e0
jmp 0x140118fbc
mov edx, dword [rsp + 0x7c]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
xor r8d, r8d
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
jmp 0x140118fc0
mov rdi, qword [rbp - 0x78]
mov edx, dword [rsp + 0x7c]
mov ebx, dword [rbp - 0x30]
test ebx, ebx
je 0x140118fe9
mov rax, qword [rbp - 0x58]
mov r8d, edx
mov rcx, qword [rbp + 0x120]
mov rdx, r13
mov dword [rsp + 0x28], esi
xor r9d, r9d
mov qword [rsp + 0x20], rax
call fcn.1400f5d70
mov rax, qword [rbp + 0x18]
mov rdx, r13
mov r9d, dword [rbp - 0xc]
mov r8d, dword [rsp + 0x74]
mov rcx, qword [rbp + 0x120]
mov dword [rsp + 0x28], 0xffffffff
mov qword [rsp + 0x20], rax
call fcn.1400fad10
cmp dword [rbp - 4], 0
je 0x140119042
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x140119080
mov r8d, dword [rsp + 0x74]
xor eax, eax
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov edx, 0x8f
mov rcx, rdi
call fcn.1400bb2e0
mov edx, dword [rsp + 0x74]
xor r8d, r8d
cmp ebx, 1
jg 0x140119057
test sil, sil
je 0x1401190df
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1401190b2
mov dword [rsp + 0x20], r8d
xor r9d, r9d
mov r8d, edx
mov rcx, rdi
mov edx, 0x82
call fcn.1400bb2e0
jmp 0x1401190df
mov edx, dword [rsp + 0x74]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
xor r8d, r8d
mov dword [rax + rcx*8], 0x8f
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], r8
mov qword [rax + rcx*8 + 0x10], r8
jmp 0x140119049
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x82
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r8
test ebx, ebx
je 0x140119106
mov rax, qword [rbp - 0x58]
xor r8d, r8d
mov r9d, dword [rbp - 0x68]
mov rdx, r13
mov rcx, qword [rbp + 0x120]
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rax
call fcn.1400f5d70
mov esi, dword [rbp - 0x5c]
mov ecx, 6
mov r9d, dword [rbp - 0xc]
mov eax, 4
mov r8d, dword [rsp + 0x74]
cmp esi, 2
mov rdx, r13
cmove eax, ecx
xor ecx, ecx
mov dword [rsp + 0x40], ecx
mov dword [rsp + 0x38], ecx
mov rcx, qword [rbp + 0x120]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0x18]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x68]
mov dword [rsp + 0x20], eax
call fcn.1400e74f0
test ebx, ebx
je 0x140119216
mov rax, qword [rbp + 0x120]
mov rax, qword [rax]
mov ecx, dword [rax + 0x30]
bt rcx, 0xe
jae 0x140119216
mov rcx, qword [r13 + 0x60]
xor r8d, r8d
mov rdx, qword [r13]
add rcx, 0x50
call fcn.1400b3cd0
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140119216
movzx edi, byte [rsp + 0x79]
mov r15, qword [rbp + 0x120]
mov r12, qword [rbp - 0x58]
mov r14, qword [rbp + 0x130]
mov esi, dword [rsp + 0x7c]
nop dword [rax + rax]
mov r9d, edi
mov r8, r12
mov rdx, rbx
mov rcx, r13
call fcn.1400b6810
test eax, eax
je 0x1401191fa
mov r9, r14
mov r8, rbx
mov rdx, r13
mov rcx, r15
call fcn.1400b4240
test rax, rax
je 0x1401191fa
xor ecx, ecx
mov r9d, esi
mov dword [rsp + 0x28], ecx
mov r8, r13
mov rcx, r15
mov dword [rsp + 0x20], 2
mov rdx, rax
call fcn.1400e6270
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x1401191b0
mov r14d, dword [rbp - 0x50]
mov r15d, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x60]
mov rdi, qword [rbp - 0x78]
mov esi, dword [rbp - 0x5c]
mov ebx, dword [rbp + 0x140]
mov edx, dword [rbp + 0x10]
test edx, edx
je 0x140119285
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x140119255
xor eax, eax
mov r8d, edx
mov edx, 0x56
mov dword [rsp + 0x20], eax
mov r9d, 1
mov rcx, rdi
call fcn.1400bb2e0
jmp 0x140119285
mov esi, dword [rbp - 0x5c]
jmp 0x14011921c
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x56
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 1
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x1401192cd
mov eax, dword [rsp + 0x7c]
mov rdx, rcx
mov r9, qword [rbp + 0x130]
mov r8d, 0x82
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x38], ebx
mov rbx, qword [rbp + 0x120]
mov dword [rsp + 0x30], eax
mov rcx, rbx
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 2
call fcn.1400e6160
jmp 0x1401192d4
mov rbx, qword [rbp + 0x120]
cmp esi, 1
je 0x1401193a9
mov rcx, qword [rdi + 0x18]
not r14d
mov eax, dword [rcx + 0x4c]
cmp esi, 2
jne 0x140119328
add eax, dword [rcx + 0x48]
jns 0x14011930a
mov r8d, r14d
mov rdx, rdi
call fcn.1400d4fb0
mov rcx, qword [rbp + 0x70]
call fcn.14012ee80
jmp 0x1401193a9
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd rdx, r14d
mov dword [rcx + rdx*4], eax
mov rcx, qword [rbp + 0x70]
call fcn.14012ee80
jmp 0x1401193a9
add eax, dword [rcx + 0x48]
jns 0x14011933a
mov r8d, r14d
mov rdx, rdi
call fcn.1400d4fb0
jmp 0x14011934a
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd rdx, r14d
mov dword [rcx + rdx*4], eax
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x140119375
mov r9d, dword [rbp]
xor eax, eax
mov r8d, r15d
mov dword [rsp + 0x20], eax
mov edx, 0x27
mov rcx, rdi
call fcn.1400bb2e0
jmp 0x1401193a9
mov edx, dword [rbp]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
xor r8d, r8d
mov dword [rax + rcx*8], 0x27
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rdi + 0x18]
not r12d
mov eax, dword [rcx + 0x4c]
add eax, dword [rcx + 0x48]
jns 0x1401193c5
mov r8d, r12d
mov rdx, rdi
call fcn.1400d4fb0
jmp 0x1401193d5
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
cmp byte [rbx + 0x1e], 0
jne 0x140119401
cmp qword [rbx + 0xb8], 0
jne 0x140119401
cmp qword [rbp + 0x158], 0
jne 0x140119401
cmp qword [rbx + 0xa8], 0
je 0x140119401
mov rcx, rbx
call fcn.14009efa0
mov edx, dword [rbp + 0x10]
test edx, edx
je 0x140119417
lea r8, str.rows_updated
mov rcx, rdi
call fcn.1400e5200
mov rsi, qword [rbp + 0x130]
mov r15, qword [rbp - 0x58]
mov rax, qword [rbp + 0x80]
test rax, rax
je 0x14011732d
mov rcx, qword [rbp + 0x88]
mov rdx, r15
mov r15, qword [rbp + 0x60]
mov qword [rax + 0x178], rcx
mov rcx, r15
call fcn.1400ea480
jmp 0x140119455
mov r15, qword [rbp + 0x60]
mov r14, qword [rbp + 0x128]
mov rbx, qword [rbp + 0x138]
mov rdi, qword [rsp + 0x1f0]
mov r12, qword [rsp + 0x1e8]
mov rdx, r14
mov rcx, r15
call fcn.1401138f0
mov r14, qword [rsp + 0x1d8]
mov r13, qword [rsp + 0x1e0]
test rsi, rsi
je 0x14011949e
mov rdx, rsi
mov rcx, r15
call fcn.1400b1b30
mov rsi, qword [rsp + 0x1f8]
test rbx, rbx
je 0x1401194b6
mov rdx, rbx
mov rcx, r15
call fcn.1400f1cf0
add rsp, 0x200
pop r15
pop rbx
pop rbp
ret