Function at 0x180005330
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x950]
sub rsp, 0xa50
mov rax, qword [0x180039010]
xor rax, rsp
mov qword [rbp + 0x940], rax
mov edx, 0x18
mov r8d, 0x499c819f
lea r9d, [rdx + 0xf]
call fcn.180004350
xor edx, edx
xor ecx, ecx
call rax
mov edi, eax
test eax, eax
jns 0x18000537e
xor esi, esi
movzx eax, si
jmp 0x180006af7
mov dword [rsp + 0x50], 0xade7d
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov qword [rsp + 0xa80], r15
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1800053f2
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, edi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800053c6
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005443
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800053ec
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800053d0
jmp 0x180005443
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, edi
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005443
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005420
mov edx, 0x18
mov r8d, 0xfaf3fba8
lea r9d, [rdx + 0x10]
call fcn.180004350
xor esi, esi
mov r15d, 3
mov qword [rsp + 0x40], rsi
xor r9d, r9d
mov dword [rsp + 0x38], esi
xor r8d, r8d
mov qword [rsp + 0x30], rsi
xor ecx, ecx
mov dword [rsp + 0x28], r15d
lea edx, [rsi - 1]
mov dword [rsp + 0x20], esi
call rax
mov r8d, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x1800054f2
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r8d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800054c7
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005544
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800054ec
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800054d0
jmp 0x180005544
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, r8d
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005544
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005521
mov qword [rsp + 0xa78], r14
mov edx, 0x18
test r8d, r8d
jns 0x18000556f
lea r9d, [rdx - 0x17]
mov r8d, 0x68cc2bb5
call fcn.180004350
call rax
movzx eax, si
jmp 0x180006ae7
mov r9d, 0x2a
mov qword [rbp + 0xa8], rsi
mov r8d, 0x5abc5ed6
call fcn.180004350
lea rcx, [rbp + 0xa8]
mov r14d, 1
mov qword [rsp + 0x20], rcx
lea r9, [0x18002e410]
lea rcx, [0x18002e430]
mov r8d, r14d
xor edx, edx
call rax
mov dword [rsp + 0x50], edi
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005622
mov ecx, dword [rsp + 0x50]
mov eax, dword [rbp + 0xa8]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800055f0
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005683
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x18000561c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180005600
jmp 0x180005683
mov eax, dword [rsp + 0x50]
mov ecx, 2
sub ecx, dword [rbp + 0xa8]
mov eax, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005683
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005660
mov edx, 0xf
mov qword [rbp + 0xc8], rsi
mov r8d, 0xde1467b1
lea r9d, [rdx + 0x4b]
call fcn.180004350
lea rcx, [rbp + 0x108]
call rax
mov dword [rsp + 0x50], edi
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005713
mov ecx, dword [rsp + 0x50]
mov eax, dword [rbp + 0x120]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800056e9
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005773
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x18000570d
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800056f1
jmp 0x180005773
mov eax, dword [rsp + 0x50]
mov ecx, 2
sub ecx, dword [rbp + 0x120]
mov eax, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005773
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005750
cmp word [rbp + 0x108], 9
mov qword [rsp + 0xa70], rbx
jne 0x180005ae8
mov edx, 0x18
mov r8d, 0x5abc5ed6
lea r9d, [rdx + 0x12]
call fcn.180004350
lea rcx, [rbp + 0xc8]
mov r8d, r14d
mov qword [rsp + 0x20], rcx
lea r9, [0x18002e420]
lea rcx, [0x18002e440]
xor edx, edx
call rax
mov edi, eax
test eax, eax
js 0x180005e23
mov dword [rsp + 0x50], 0xade7d
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005832
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, edi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005808
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005883
nop dword [rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x18000582c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180005810
jmp 0x180005883
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, edi
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005883
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005860
mov byte [rbp - 0x78], sil
mov byte [rbp - 0x77], r14b
mov byte [rbp - 0x76], 0x24
mov byte [rbp - 0x75], r14b
mov byte [rbp - 0x74], 0x24
mov byte [rbp - 0x73], 0x3c
mov byte [rbp - 0x72], 0x24
mov byte [rbp - 0x71], 0x79
mov byte [rbp - 0x70], 0x24
mov byte [rbp - 0x6f], 0x52
mov byte [rbp - 0x6e], 0x24
mov byte [rbp - 0x6d], 0x2e
mov byte [rbp - 0x6c], 0x24
mov byte [rbp - 0x6b], 4
mov byte [rbp - 0x6a], 0x24
mov byte [rbp - 0x69], 0x42
mov byte [rbp - 0x68], 0x24
mov byte [rbp - 0x67], 0x4f
mov byte [rbp - 0x66], 0x24
mov byte [rbp - 0x65], 0x79
mov byte [rbp - 0x64], 0x24
mov byte [rbp - 0x63], 0x77
mov byte [rbp - 0x62], 0x24
mov byte [rbp - 0x61], 0x79
mov byte [rbp - 0x60], 0x24
mov byte [rbp - 0x5f], 0x35
mov byte [rbp - 0x5e], 0x24
mov byte [rbp - 0x5d], 0x76
mov byte [rbp - 0x5c], 0x24
mov byte [rbp - 0x5b], 4
mov byte [rbp - 0x5a], 0x24
mov byte [rbp - 0x59], 0x14
mov byte [rbp - 0x58], 0x24
mov byte [rbp - 0x57], 0x4f
mov byte [rbp - 0x56], 0x24
mov byte [rbp - 0x55], 0x35
mov byte [rbp - 0x54], 0x24
mov byte [rbp - 0x53], 0x14
mov byte [rbp - 0x52], 0x24
mov byte [rbp - 0x51], 0x21
mov byte [rbp - 0x50], 0x24
mov byte [rbp - 0x4f], 0x79
mov byte [rbp - 0x4e], 0x24
mov byte [rbp - 0x4d], 0x4f
mov byte [rbp - 0x4c], 0x24
mov byte [rbp - 0x4b], 0x24
mov byte [rbp - 0x4a], 0x24
movzx eax, byte [rbp - 0x77]
movzx eax, byte [rbp - 0x78]
test al, al
jne 0x18000599f
mov rdi, rsi
nop
movzx ecx, byte [rbp + rdi - 0x77]
mov eax, 0x24
sub eax, ecx
imul ecx, eax, 0x27
mov eax, 0x81020409
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rbp + rdi - 0x77], cl
inc rdi
cmp rdi, 0x2e
jb 0x180005950
mov edx, 0x19
mov r8d, 0x54def57d
lea r9d, [rdx - 5]
call fcn.180004350
lea rcx, [rbp - 0x77]
call rax
mov edx, 0x19
mov r8d, 0xfc4ef6a9
mov rbx, rax
lea r9d, [rdx - 6]
call fcn.180004350
lea rcx, [rbp + 0xf0]
call rax
mov rcx, qword [rbp + 0xc8]
lea r9, [rbp + 0xf0]
mov word [rbp + 0xf0], r15w
xor r8d, r8d
mov dword [rbp + 0xf8], 0x40
mov rdx, qword [rcx]
mov rdi, qword [rdx + 0x40]
mov rdx, rbx
call rdi
mov ebx, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x180005a72
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, ebx
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005a4a
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005ac3
nop
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005a6c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180005a50
jmp 0x180005ac3
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, ebx
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005ac3
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005aa0
mov edx, 0x19
mov r8d, 0xbc7bf3e8
lea r9d, [rdx - 7]
call fcn.180004350
lea rcx, [rbp + 0xf0]
call rax
test ebx, ebx
js 0x180005e23
mov qword [rbp + 0xa0], rsi
mov byte [rsp + 0x70], sil
mov byte [rsp + 0x71], 0x12
mov byte [rsp + 0x72], 0x65
mov byte [rsp + 0x73], 4
mov byte [rsp + 0x74], 0x65
mov byte [rsp + 0x75], 4
mov byte [rsp + 0x76], 0x65
mov byte [rsp + 0x77], 0x70
mov byte [rsp + 0x78], 0x65
mov byte [rsp + 0x79], WSAGetLastError
mov byte [rsp + 0x7a], 0x65
mov byte [rsp + 0x7b], 0x4b
mov byte [rsp + 0x7c], 0x65
mov byte [rsp + 0x7d], 0x67
mov byte [rsp + 0x7e], 0x65
mov byte [rsp + 0x7f], 0x25
mov byte [rbp - 0x80], 0x65
mov byte [rbp - 0x7f], 0x4f
mov byte [rbp - 0x7e], 0x65
mov byte [rbp - 0x7d], 0x26
mov byte [rbp - 0x7c], 0x65
mov byte [rbp - 0x7b], 0x65
mov byte [rbp - 0x7a], 0x65
movzx eax, byte [rsp + 0x71]
movzx eax, byte [rsp + 0x70]
test al, al
jne 0x180005bbf
mov rdi, rsi
nop dword [rax]
movzx ecx, byte [rsp + rdi + 0x71]
mov eax, 0x65
sub eax, ecx
imul ecx, eax, 0x1b
mov eax, 0x81020409
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rsp + rdi + 0x71], cl
inc rdi
cmp rdi, 0x16
jb 0x180005b70
mov edx, 0x19
mov r8d, 0x54def57d
lea r9d, [rdx - 5]
call fcn.180004350
lea rcx, [rsp + 0x71]
call rax
mov rcx, qword [rbp + 0xa8]
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rcx]
mov rdi, qword [rdx + 0x18]
lea rdx, [rbp + 0xa0]
mov qword [rsp + 0x40], rdx
mov rdx, qword [rbp + 0xc8]
mov qword [rsp + 0x38], rdx
mov rdx, rax
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
call rdi
mov r8d, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x180005c92
mov ecx, dword [rsp + 0x50]
mov eax, dword [rbp + 0xa0]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005c62
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005cf3
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005c8c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180005c70
jmp 0x180005cf3
mov eax, dword [rsp + 0x50]
mov ecx, 2
sub ecx, dword [rbp + 0xa0]
mov eax, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005cf3
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005cd0
test r8d, r8d
js 0x180005e16
mov rdi, qword [rbp + 0xa0]
mov edx, 0x18
mov r8d, 0x9b4ca937
lea r9d, [rdx + 0x11]
call fcn.180004350
mov dword [rsp + 0x38], esi
xor r9d, r9d
mov qword [rsp + 0x30], rsi
xor r8d, r8d
mov dword [rsp + 0x28], r15d
mov rcx, rdi
mov dword [rsp + 0x20], r15d
lea edx, [r9 + 0xa]
call rax
mov r8d, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x180005db2
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r8d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005d7d
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180005e04
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180005dac
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180005d90
jmp 0x180005e04
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, r8d
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180005e04
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180005de1
test r8d, r8d
jns 0x180005e40
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xa8]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov r9d, r14d
mov edx, 0x18
mov r8d, 0x68cc2bb5
call fcn.180004350
call rax
movzx eax, si
jmp 0x180006adf
mov byte [rsp + 0x60], sil
mov byte [rsp + 0x61], 0x29
mov byte [rsp + 0x62], 0x1a
mov byte [rsp + 0x63], 0x4b
mov byte [rsp + 0x64], 0x1a
mov byte [rsp + 0x65], 0x3d
mov byte [rsp + 0x66], 0x1a
mov byte [rsp + 0x67], 0x1a
mov byte [rsp + 0x68], 0x1a
movzx eax, byte [rsp + 0x61]
movzx eax, byte [rsp + 0x60]
test al, al
jne 0x180005ecf
mov rdi, rsi
nop
movzx ecx, byte [rsp + rdi + 0x61]
mov eax, 0x1a
sub eax, ecx
imul ecx, eax, 0x2d
mov eax, 0x81020409
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rsp + rdi + 0x61], cl
inc rdi
cmp rdi, 8
jb 0x180005e80
mov edx, 0x19
mov r8d, 0x54def57d
lea r9d, [rdx - 5]
call fcn.180004350
lea rcx, [rsp + 0x61]
call rax
mov byte [rbp - 0x48], sil
mov rbx, rax
mov byte [rbp - 0x47], 0x44
mov byte [rbp - 0x46], 0x69
mov byte [rbp - 0x45], 0x3e
mov byte [rbp - 0x44], 0x69
mov byte [rbp - 0x43], 0x41
mov byte [rbp - 0x42], 0x69
mov byte [rbp - 0x41], 0x3e
mov byte [rbp - 0x40], 0x69
mov byte [rbp - 0x3f], 0x2b
mov byte [rbp - 0x3e], 0x69
mov byte [rbp - 0x3d], 0xe
mov byte [rbp - 0x3c], 0x69
mov byte [rbp - 0x3b], 0x1c
mov byte [rbp - 0x3a], 0x69
mov byte [rbp - 0x39], 0x7b
mov byte [rbp - 0x38], 0x69
mov byte [rbp - 0x37], 0x1c
mov byte [rbp - 0x36], 0x69
mov byte [rbp - 0x35], 8
mov byte [rbp - 0x34], 0x69
mov byte [rbp - 0x33], 0x7a
mov byte [rbp - 0x32], 0x69
mov byte [rbp - 0x31], 0x1e
mov byte [rbp - 0x30], 0x69
mov byte [rbp - 0x2f], 0xb
mov byte [rbp - 0x2e], 0x69
mov byte [rbp - 0x2d], 0x1c
mov byte [rbp - 0x2c], 0x69
mov byte [rbp - 0x2b], 0x6a
mov byte [rbp - 0x2a], 0x69
mov byte [rbp - 0x29], 0x17
mov byte [rbp - 0x28], 0x69
mov byte [rbp - 0x27], 7
mov byte [rbp - 0x26], 0x69
mov byte [rbp - 0x25], 0x12
mov byte [rbp - 0x24], 0x69
mov byte [rbp - 0x23], 0x48
mov byte [rbp - 0x22], 0x69
mov byte [rbp - 0x21], 0x37
mov byte [rbp - 0x20], 0x69
mov byte [rbp - 0x1f], 0x44
mov byte [rbp - 0x1e], 0x69
mov byte [rbp - 0x1d], 0x4d
mov byte [rbp - 0x1c], 0x69
mov byte [rbp - 0x1b], 0x4a
mov byte [rbp - 0x1a], 0x69
mov byte [rbp - 0x19], 0x27
mov byte [rbp - 0x18], 0x69
mov byte [rbp - 0x17], 0x50
mov byte [rbp - 0x16], 0x69
mov byte [rbp - 0x15], 0x1d
mov byte [rbp - 0x14], 0x69
mov byte [rbp - 0x13], 0x2b
mov byte [rbp - 0x12], 0x69
mov byte [rbp - 0x11], 0x50
mov byte [rbp - 0x10], 0x69
mov byte [rbp - 0xf], 0x1a
mov byte [rbp - 0xe], 0x69
mov byte [rbp - 0xd], 0x30
mov byte [rbp - 0xc], 0x69
mov byte [rbp - 0xb], 0x69
mov byte [rbp - 0xa], 0x69
movzx eax, byte [rbp - 0x47]
movzx eax, byte [rbp - 0x48]
test al, al
jne 0x180006052
mov rdi, rsi
nop dword [rax + rax]
movzx ecx, byte [rbp + rdi - 0x47]
mov eax, 0x69
sub eax, ecx
lea ecx, [rax + rax*4]
mov eax, 0x81020409
shl ecx, 3
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rbp + rdi - 0x47], cl
inc rdi
cmp rdi, 0x3e
jb 0x180006000
mov edx, 0x19
mov r8d, 0x54def57d
lea r9d, [rdx - 5]
call fcn.180004350
lea rcx, [rbp - 0x47]
call rax
mov rcx, qword [rbp + 0xa0]
mov r9d, 0x30
mov qword [rbp + 0xb8], rsi
mov r8, rax
mov rdx, qword [rcx]
mov rdi, qword [rdx + 0xa0]
lea rdx, [rbp + 0xb8]
mov qword [rsp + 0x28], rdx
mov rdx, rbx
mov qword [rsp + 0x20], rsi
call rdi
mov r8d, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x180006112
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r8d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800060e7
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180006164
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x18000610c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800060f0
jmp 0x180006164
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, r8d
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180006164
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180006141
test r8d, r8d
jns 0x180006188
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xa8]
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x180006ac6
mov qword [rbp + 0xc0], rsi
mov eax, 0x55555556
mov dword [rbp + 0xe8], esi
mov dword [rsp + 0x50], edi
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180006202
mov ecx, dword [rsp + 0x50]
mov eax, dword [rbp + 0xb8]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800061d7
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180006263
nop
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800061fc
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800061e0
jmp 0x180006263
mov eax, dword [rsp + 0x50]
mov ecx, 2
sub ecx, dword [rbp + 0xb8]
mov eax, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180006263
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180006240
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x180006a8d
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx]
lea rdx, [rbp + 0xe8]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0xc0]
mov edx, 0xffffffff
mov r8d, r14d
call qword [rax + 0x20]
mov r8d, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x180006312
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r8d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800062e5
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180006364
nop dword [rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x18000630c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800062f0
jmp 0x180006364
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, r8d
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180006364
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180006341
cmp dword [rbp + 0xe8], esi
je 0x180006a8d
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rax]
mov byte [rsp + 0x54], sil
mov byte [rsp + 0x55], 0xa
mov byte [rsp + 0x56], 2
mov r10, qword [rcx + 0x20]
mov byte [rsp + 0x57], 0x56
mov byte [rsp + 0x58], 2
mov byte [rsp + 0x59], 2
mov byte [rsp + 0x5a], 2
movzx eax, byte [rsp + 0x55]
movzx eax, byte [rsp + 0x54]
test al, al
jne 0x18000640b
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rsp + rdi + 0x55]
mov eax, 0x81020409
sub ecx, 2
imul ecx, ecx, 0x19
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rsp + rdi + 0x55], cl
inc rdi
cmp rdi, 6
jb 0x1800063c0
mov rcx, qword [rbp + 0xc0]
lea r9, [rbp + 0xd0]
mov qword [rsp + 0x28], rsi
lea rdx, [rsp + 0x55]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call r10
mov r8d, eax
mov dword [rsp + 0x50], 0xade7d
mov edi, dword [rsp + 0x50]
mov eax, 0x55555556
imul edi
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp edi, ecx
je 0x1800064a2
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r8d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x180006472
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1800064f4
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x18000649c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180006480
jmp 0x1800064f4
mov eax, dword [rsp + 0x50]
mov ecx, 2
mov eax, dword [rsp + 0x50]
sub ecx, r8d
add ecx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x1800064f4
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1800064d1
xor eax, eax
lea rdi, [rbp + 0x140]
mov ecx, 0x800
rep stosb byte [rdi], al
mov byte [rbp], al
mov byte [rbp + 1], 0x2b
mov byte [rbp + 2], 0xb
mov byte [rbp + 3], 0x56
mov byte [rbp + 4], 0xb
mov byte [rbp + 5], 0x3c
mov byte [rbp + 6], 0xb
mov byte [rbp + 7], 0x1f
mov byte [rbp + 8], 0xb
mov byte [rbp + 9], 0x4d
mov byte [rbp + 0xa], 0xb
mov byte [rbp + 0xb], 0x13
mov byte [rbp + 0xc], 0xb
mov byte [rbp + 0xd], 0x4d
mov byte [rbp + 0xe], 0xb
mov byte [rbp + 0xf], 0x2f
mov byte [rbp + 0x10], 0xb
mov byte [rbp + 0x11], 0x30
mov byte [rbp + 0x12], 0xb
mov byte [rbp + 0x13], 0x2b
mov byte [rbp + 0x14], 0xb
mov byte [rbp + 0x15], 0x2f
mov byte [rbp + 0x16], 0xb
mov byte [rbp + 0x17], 7
mov byte [rbp + 0x18], 0xb
mov byte [rbp + 0x19], WSAGetLastError
mov byte [rbp + 0x1a], 0xb
mov byte [rbp + 0x1b], 0x33
mov byte [rbp + 0x1c], 0xb
mov byte [rbp + 0x1d], 0x5d
mov byte [rbp + 0x1e], 0xb
mov byte [rbp + 0x1f], 0x12
mov byte [rbp + 0x20], 0xb
mov byte [rbp + 0x21], 0x67
mov byte [rbp + 0x22], 0xb
mov byte [rbp + 0x23], 0x3c
mov byte [rbp + 0x24], 0xb
mov byte [rbp + 0x25], 0x78
mov byte [rbp + 0x26], 0xb
mov byte [rbp + 0x27], 2
mov byte [rbp + 0x28], 0xb
mov byte [rbp + 0x29], 0x3d
mov byte [rbp + 0x2a], 0xb
mov byte [rbp + 0x2b], 0x33
mov byte [rbp + 0x2c], 0xb
mov byte [rbp + 0x2d], 0x19
mov byte [rbp + 0x2e], 0xb
mov byte [rbp + 0x2f], 0x24
mov byte [rbp + 0x30], 0xb
mov byte [rbp + 0x31], 0x3d
mov byte [rbp + 0x32], 0xb
mov byte [rbp + 0x33], 0x4e
mov byte [rbp + 0x34], 0xb
mov byte [rbp + 0x35], 0x4d
mov byte [rbp + 0x36], 0xb
mov byte [rbp + 0x37], 0x56
mov byte [rbp + 0x38], 0xb
mov byte [rbp + 0x39], 0x74
mov byte [rbp + 0x3a], 0xb
mov byte [rbp + 0x3b], 0x63
mov byte [rbp + 0x3c], 0xb
mov byte [rbp + 0x3d], 0x33
mov byte [rbp + 0x3e], 0xb
mov byte [rbp + 0x3f], 2
mov byte [rbp + 0x40], 0xb
mov byte [rbp + 0x41], 0x1a
mov byte [rbp + 0x42], 0xb
mov byte [rbp + 0x43], 0x4d
mov byte [rbp + 0x44], 0xb
mov byte [rbp + 0x45], 0x56
mov byte [rbp + 0x46], 0xb
mov byte [rbp + 0x47], 0x33
mov byte [rbp + 0x48], 0xb
mov byte [rbp + 0x49], 0x5d
mov byte [rbp + 0x4a], 0xb
mov byte [rbp + 0x4b], 0x32
mov byte [rbp + 0x4c], 0xb
mov byte [rbp + 0x4d], WSAGetLastError
mov byte [rbp + 0x4e], 0xb
mov byte [rbp + 0x4f], 7
mov byte [rbp + 0x50], 0xb
mov byte [rbp + 0x51], 0x1f
mov byte [rbp + 0x52], 0xb
mov byte [rbp + 0x53], 0x4d
mov byte [rbp + 0x54], 0xb
mov byte [rbp + 0x55], 0x13
mov byte [rbp + 0x56], 0xb
mov byte [rbp + 0x57], 0x4d
mov byte [rbp + 0x58], 0xb
mov byte [rbp + 0x59], 0x2f
mov byte [rbp + 0x5a], 0xb
mov byte [rbp + 0x5b], 0x3d
mov byte [rbp + 0x5c], 0xb
mov byte [rbp + 0x5d], r14b
mov byte [rbp + 0x5e], 0xb
mov byte [rbp + 0x5f], 9
mov byte [rbp + 0x60], 0xb
mov byte [rbp + 0x61], 0x3c
mov byte [rbp + 0x62], 0xb
mov byte [rbp + 0x63], 0x78
mov byte [rbp + 0x64], 0xb
mov byte [rbp + 0x65], 2
mov byte [rbp + 0x66], 0xb
mov byte [rbp + 0x67], 0x2b
mov byte [rbp + 0x68], 0xb
mov byte [rbp + 0x69], 0x78
mov byte [rbp + 0x6a], 0xb
mov byte [rbp + 0x6b], 0xa
mov byte [rbp + 0x6c], 0xb
mov byte [rbp + 0x6d], 0x24
mov byte [rbp + 0x6e], 0xb
mov byte [rbp + 0x6f], 0x2f
mov byte [rbp + 0x70], 0xb
mov byte [rbp + 0x71], 2
mov byte [rbp + 0x72], 0xb
mov byte [rbp + 0x73], r14b
mov byte [rbp + 0x74], 0xb
mov byte [rbp + 0x75], 0x4d
mov byte [rbp + 0x76], 0xb
mov byte [rbp + 0x77], 0x2c
mov byte [rbp + 0x78], 0xb
mov byte [rbp + 0x79], 0x4d
mov byte [rbp + 0x7a], 0xb
mov byte [rbp + 0x7b], 0x2f
mov byte [rbp + 0x7c], 0xb
mov byte [rbp + 0x7d], 0x51
mov byte [rbp + 0x7e], 0xb
mov byte [rbp + 0x7f], WSAGetLastError
mov byte [rbp + 0x80], 0xb
mov byte [rbp + 0x81], 0x18
mov byte [rbp + 0x82], 0xb
mov byte [rbp + 0x83], 0x20
mov byte [rbp + 0x84], 0xb
mov byte [rbp + 0x85], 0x27
mov byte [rbp + 0x86], 0xb
mov byte [rbp + 0x87], 5
mov byte [rbp + 0x88], 0xb
mov byte [rbp + 0x89], 0x3d
mov byte [rbp + 0x8a], 0xb
mov byte [rbp + 0x8b], 0x27
mov byte [rbp + 0x8c], 0xb
mov byte [rbp + 0x8d], 0x51
mov byte [rbp + 0x8e], 0xb
mov byte [rbp + 0x8f], 0x2f
mov byte [rbp + 0x90], 0xb
mov byte [rbp + 0x91], 0x3c
mov byte [rbp + 0x92], 0xb
mov byte [rbp + 0x93], 0x4d
mov byte [rbp + 0x94], 0xb
mov byte [rbp + 0x95], 0x45
mov byte [rbp + 0x96], 0xb
mov byte [rbp + 0x97], 0x4d
mov byte [rbp + 0x98], 0xb
mov byte [rbp + 0x99], 0x4e
mov byte [rbp + 0x9a], 0xb
mov byte [rbp + 0x9b], 0x4d
mov byte [rbp + 0x9c], 0xb
mov byte [rbp + 0x9d], 0xb
mov byte [rbp + 0x9e], 0xb
movzx eax, byte [rbp + 1]
movzx eax, byte [rbp]
test al, al
jne 0x18000683e
mov rdi, rsi
nop dword [rax + rax]
movzx ecx, byte [rbp + rdi + 1]
mov eax, 0x81020409
sub ecx, 0xb
imul ecx, ecx, 0xf
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rbp + rdi + 1], cl
inc rdi
cmp rdi, 0x9e
jb 0x1800067f0
mov r8, qword [rbp + 0xd8]
lea rdx, [rbp + 1]
lea rcx, [rbp + 0x140]
call qword [sym.imp.USER32.dll_wsprintfW]
mov edx, 0xf
mov dword [rsp + 0x50], 0xba372
mov r8d, 0x5126a209
lea r9d, [rdx + 0x56]
call fcn.180004350
lea rcx, [rbp + 0xb0]
call rax
mov dword [rsp + 0x50], 0xade7d
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1800068f2
mov ecx, dword [rsp + 0x50]
mov eax, dword [rbp + 0xb0]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800068c1
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180006953
nop dword [rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800068ec
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800068d0
jmp 0x180006953
mov eax, dword [rsp + 0x50]
mov ecx, 2
sub ecx, dword [rbp + 0xb0]
mov eax, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180006953
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180006930
lea rcx, [rbp + 0x140]
call fcn.180004d50
mov rdi, qword [rbp + 0xb0]
mov edx, 0xf
mov r8d, 0x58cb0595
lea r9d, [rdx + 0x4f]
call fcn.180004350
mov rcx, rdi
call rax
mov dword [rsp + 0x50], 0xade7d
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1800069f2
mov ecx, dword [rsp + 0x50]
mov eax, dword [rbp + 0xb0]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800069c5
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x180006a53
nop dword [rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1800069ec
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1800069d0
jmp 0x180006a53
mov eax, dword [rsp + 0x50]
mov ecx, 2
sub ecx, dword [rbp + 0xb0]
mov eax, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x180006a53
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180006a30
mov edx, 0x19
mov r8d, 0xbc7bf3e8
lea r9d, [rdx - 7]
call fcn.180004350
lea rcx, [rbp + 0xd0]
call rax
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
jne 0x180006280
mov rcx, qword [rbp + 0xc8]
test rcx, rcx
je 0x180006a9f
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0xa8]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov rcx, qword [rbp + 0xb8]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov r9d, r14d
mov r8d, 0x68cc2bb5
mov edx, 0x18
call fcn.180004350
call rax
movzx eax, r14w
mov rbx, qword [rsp + 0xa70]
mov r14, qword [rsp + 0xa78]
mov r15, qword [rsp + 0xa80]
mov rcx, qword [rbp + 0x940]
xor rcx, rsp
call fcn.18001f3a0
add rsp, 0xa50
pop rdi
pop rsi
pop rbp
ret