Function at 0x1800038c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xd0
xor r9d, r9d
mov edi, r8d
mov qword [rbp + 0x7f], r9
mov ebx, edx
mov byte [rbp + 0xa], r9b
mov r11, rcx
mov byte [rbp + 0xb], 0x28
mov byte [rbp + 0xc], 0x63
mov byte [rbp + 0xd], 0x23
mov byte [rbp + 0xe], 0x19
mov byte [rbp + 0xf], 0xe
mov byte [rbp + 0x10], 0x35
mov byte [rbp + 0x11], 0x76
mov byte [rbp + 0x12], 0x33
mov byte [rbp + 0x13], 0x25
mov byte [rbp + 0x14], 0x63
mov byte [rbp + 0x15], r9b
mov byte [rbp + 0x16], r9b
mov byte [rbp + 0x17], 3
movzx eax, byte [rbp + 0xb]
movzx eax, byte [rbp + 0xa]
test al, al
jne 0x180003984
mov r8d, r9d
nop dword [rax]
movzx ecx, byte [rbp + r8 + 0xb]
mov eax, 3
sub eax, ecx
lea ecx, [rax + rax*8]
mov eax, 0x81020409
shl ecx, 2
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 + r8 + 0xb], cl
inc r8
cmp r8, 0xd
jb 0x180003930
mov byte [rbp - 4], r9b
mov byte [rbp - 3], 0x7c
mov byte [rbp - 2], WSAGetLastError
mov byte [rbp - 1], 0x67
mov byte [rbp], 0x1b
mov byte [rbp + 1], WSAGetLastError
mov byte [rbp + 2], 0x74
mov byte [rbp + 3], 0x31
mov byte [rbp + 4], 0x1e
mov byte [rbp + 5], 0x51
mov byte [rbp + 6], 0x5b
mov byte [rbp + 7], 0x74
mov byte [rbp + 8], 0x74
mov byte [rbp + 9], 0x60
movzx eax, byte [rbp - 3]
movzx eax, byte [rbp - 4]
test al, al
jne 0x180003a24
mov r8, r9
nop dword [rax + rax]
movzx ecx, byte [rbp + r8 - 3]
mov eax, 0x60
sub eax, ecx
lea ecx, [rax + rax*4]
mov eax, 0x81020409
shl ecx, 2
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 + r8 - 3], cl
inc r8
cmp r8, 0xd
jb 0x1800039d0
mov byte [rbp + 0x18], r9b
mov byte [rbp + 0x19], 0x25
mov byte [rbp + 0x1a], WSAGetLastError
mov byte [rbp + 0x1b], 0x28
mov byte [rbp + 0x1c], 0x66
mov byte [rbp + 0x1d], 0x21
mov byte [rbp + 0x1e], 0x74
mov byte [rbp + 0x1f], 0x55
mov byte [rbp + 0x20], 0x73
mov byte [rbp + 0x21], WSAGetLastError
mov byte [rbp + 0x22], 0xc
mov byte [rbp + 0x23], 0x1a
mov byte [rbp + 0x24], 0x1a
mov byte [rbp + 0x25], 0x5b
movzx eax, byte [rbp + 0x19]
movzx eax, byte [rbp + 0x18]
test al, al
jne 0x180003ac5
mov r10, r9
nop dword [rax + rax]
movzx ecx, byte [rbp + r10 + 0x19]
mov eax, 0x81020409
sub ecx, 0x5b
imul r8d, ecx, 0x37
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r10 + 0x19], r8b
inc r10
cmp r10, 0xd
jb 0x180003a70
mov byte [rbp + 0x26], r9b
mov byte [rbp + 0x27], 0x21
mov byte [rbp + 0x28], 0x34
mov byte [rbp + 0x29], 0x7b
mov byte [rbp + 0x2a], 0x18
mov byte [rbp + 0x2b], 0x34
mov byte [rbp + 0x2c], 0x4a
mov byte [rbp + 0x2d], 0x34
mov byte [rbp + 0x2e], 3
mov byte [rbp + 0x2f], 0x62
mov byte [rbp + 0x30], 0x5f
mov byte [rbp + 0x31], 0x18
mov byte [rbp + 0x32], 0x18
mov byte [rbp + 0x33], 0x1e
movzx eax, byte [rbp + 0x27]
movzx eax, byte [rbp + 0x26]
test al, al
jne 0x180003b63
mov r8, r9
nop dword [rax]
movzx ecx, byte [rbp + r8 + 0x27]
mov eax, 0x1e
sub eax, ecx
lea ecx, [rax + rax*8]
mov eax, 0x81020409
add ecx, ecx
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 + r8 + 0x27], cl
inc r8
cmp r8, 0xd
jb 0x180003b10
mov byte [rbp + 0x34], r9b
mov byte [rbp + 0x35], 0x53
mov byte [rbp + 0x36], 0x5a
mov byte [rbp + 0x37], 0x79
mov byte [rbp + 0x38], 0x3b
mov byte [rbp + 0x39], 0x79
mov byte [rbp + 0x3a], 0x1f
mov byte [rbp + 0x3b], 0x63
mov byte [rbp + 0x3c], 0x3b
mov byte [rbp + 0x3d], WSAGetLastError
mov byte [rbp + 0x3e], 6
mov byte [rbp + 0x3f], r9b
mov byte [rbp + 0x40], r9b
mov byte [rbp + 0x41], 0x51
movzx eax, byte [rbp + 0x35]
movzx eax, byte [rbp + 0x34]
test al, al
jne 0x180003c05
mov r10, r9
nop word [rax + rax]
movzx ecx, byte [rbp + r10 + 0x35]
mov eax, 0x81020409
sub ecx, 0x51
imul r8d, ecx, 0x29
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r10 + 0x35], r8b
inc r10
cmp r10, 0xd
jb 0x180003bb0
mov byte [rbp - 0x37], r9b
mov byte [rbp - 0x36], 0x38
mov byte [rbp - 0x35], 0x43
mov byte [rbp - 0x34], 0x57
mov byte [rbp - 0x33], 0x7a
mov byte [rbp - 0x32], 0x74
mov byte [rbp - 0x31], 0x57
mov byte [rbp - 0x30], 0x62
mov byte [rbp - 0x2f], 0xd
mov byte [rbp - 0x2e], 0x76
mov byte [rbp - 0x2d], 0x76
mov byte [rbp - 0x2c], 0x22
movzx eax, byte [rbp - 0x36]
movzx eax, byte [rbp - 0x37]
test al, al
jne 0x180003ca1
mov r8, r9
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rbp + r8 - 0x36]
mov eax, 0x22
sub eax, ecx
imul ecx, eax, 0x23
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 + r8 - 0x36], cl
inc r8
cmp r8, 0xb
jb 0x180003c50
mov byte [rbp - 0x43], r9b
mov byte [rbp - 0x42], 0x69
mov byte [rbp - 0x41], 0x6b
mov byte [rbp - 0x40], 0x7b
mov byte [rbp - 0x3f], 0x5a
mov byte [rbp - 0x3e], 0x23
mov byte [rbp - 0x3d], 0x12
mov byte [rbp - 0x3c], 0x4d
mov byte [rbp - 0x3b], 0x6a
mov byte [rbp - 0x3a], 0x73
mov byte [rbp - 0x39], 0x73
mov byte [rbp - 0x38], 0x39
movzx eax, byte [rbp - 0x42]
movzx eax, byte [rbp - 0x43]
test al, al
jne 0x180003d35
mov r10, r9
movzx ecx, byte [rbp + r10 - 0x42]
mov eax, 0x81020409
sub ecx, 0x39
imul r8d, ecx, 0xf
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r10 - 0x42], r8b
inc r10
cmp r10, 0xb
jb 0x180003ce0
mov byte [rbp - 0x2b], r9b
mov byte [rbp - 0x2a], 0x43
mov byte [rbp - 0x29], 0x1d
mov byte [rbp - 0x28], 0x34
mov byte [rbp - 0x27], 0x14
mov byte [rbp - 0x26], 0x54
mov byte [rbp - 0x25], 0x4b
mov byte [rbp - 0x24], 3
mov byte [rbp - 0x23], 0xd
mov byte [rbp - 0x22], 6
mov byte [rbp - 0x21], 0x34
mov byte [rbp - 0x20], 0x34
mov byte [rbp - 0x1f], 0x42
movzx eax, byte [rbp - 0x2a]
movzx eax, byte [rbp - 0x2b]
test al, al
jne 0x180003dd1
mov r8, r9
nop dword [rax + rax]
movzx ecx, byte [rbp + r8 - 0x2a]
mov eax, 0x42
sub eax, ecx
imul ecx, eax, 0x2c
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 + r8 - 0x2a], cl
inc r8
cmp r8, 0xc
jb 0x180003d80
mov byte [rbp - 0x1e], r9b
mov byte [rbp - 0x1d], 0x4d
mov byte [rbp - 0x1c], 0x31
mov byte [rbp - 0x1b], 0x35
mov byte [rbp - 0x1a], 0x56
mov byte [rbp - 0x19], 0x56
mov byte [rbp - 0x18], 0x23
mov byte [rbp - 0x17], 0x79
mov byte [rbp - 0x16], 0x54
mov byte [rbp - 0x15], 0xc
mov byte [rbp - 0x14], 0x56
mov byte [rbp - 0x13], 0x56
mov byte [rbp - 0x12], 0x67
movzx eax, byte [rbp - 0x1d]
movzx eax, byte [rbp - 0x1e]
test al, al
jne 0x180003e75
mov r10, r9
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rbp + r10 - 0x1d]
mov eax, 0x81020409
sub ecx, 0x67
imul r8d, ecx, 0x1f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r10 - 0x1d], r8b
inc r10
cmp r10, 0xc
jb 0x180003e20
mov byte [rbp - 0x59], r9b
mov byte [rbp - 0x58], 0x66
mov byte [rbp - 0x57], 0x6b
mov byte [rbp - 0x56], 0x3e
mov byte [rbp - 0x55], 0x31
mov byte [rbp - 0x54], 0x61
mov byte [rbp - 0x53], 0x23
mov byte [rbp - 0x52], WSAGetLastError
mov byte [rbp - 0x51], 0x6b
mov byte [rbp - 0x50], 0x6b
mov byte [rbp - 0x4f], 0x54
movzx eax, byte [rbp - 0x58]
movzx eax, byte [rbp - 0x59]
test al, al
jne 0x180003f01
mov r8, r9
movzx ecx, byte [rbp + r8 - 0x58]
mov eax, 0x54
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 [rbp + r8 - 0x58], cl
inc r8
cmp r8, 0xa
jb 0x180003eb0
mov byte [rbp + 0x42], r9b
mov byte [rbp + 0x43], 0x1a
mov byte [rbp + 0x44], 0xc
mov byte [rbp + 0x45], 0xb
mov byte [rbp + 0x46], 0x18
mov byte [rbp + 0x47], 0x68
mov byte [rbp + 0x48], 0x7a
mov byte [rbp + 0x49], 0x16
mov byte [rbp + 0x4a], 0x28
mov byte [rbp + 0x4b], 0x70
mov byte [rbp + 0x4c], 0x1d
mov byte [rbp + 0x4d], 0xc
mov byte [rbp + 0x4e], 0xc
mov byte [rbp + 0x4f], 0x33
movzx eax, byte [rbp + 0x43]
movzx eax, byte [rbp + 0x42]
test al, al
jne 0x180003fa5
mov r10, r9
nop dword [rax + rax]
movzx ecx, byte [rbp + r10 + 0x43]
mov eax, 0x81020409
sub ecx, 0x33
imul r8d, ecx, 7
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r10 + 0x43], r8b
inc r10
cmp r10, 0xd
jb 0x180003f50
mov byte [rbp - 0x4e], r9b
mov byte [rbp - 0x4d], 5
mov byte [rbp - 0x4c], 0xc
mov byte [rbp - 0x4b], 0x4e
mov byte [rbp - 0x4a], 0x2d
mov byte [rbp - 0x49], 0x2d
mov byte [rbp - 0x48], 0xf
mov byte [rbp - 0x47], 0x4e
mov byte [rbp - 0x46], 0x2d
mov byte [rbp - 0x45], 0x2d
mov byte [rbp - 0x44], 0x2e
movzx eax, byte [rbp - 0x4d]
movzx eax, byte [rbp - 0x4e]
test al, al
jne 0x180004035
mov r10, r9
movzx ecx, byte [rbp + r10 - 0x4d]
mov eax, 0x81020409
sub ecx, 0x2e
imul r8d, ecx, 0x13
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r10 - 0x4d], r8b
inc r10
cmp r10, 0xa
jb 0x180003fe0
mov byte [rbp - 0x11], r9b
mov byte [rbp - 0x10], 6
mov byte [rbp - 0xf], 0x78
mov byte [rbp - 0xe], 0x25
mov byte [rbp - 0xd], 0x35
mov byte [rbp - 0xc], 0x3c
mov byte [rbp - 0xb], 0x69
mov byte [rbp - 0xa], 8
mov byte [rbp - 9], 1
mov byte [rbp - 8], 0x20
mov byte [rbp - 7], 0x2e
mov byte [rbp - 6], 0x2e
mov byte [rbp - 5], reloc.WS2_32.dll_WSAGetLastError
movzx eax, byte [rbp - 0x10]
movzx eax, byte [rbp - 0x11]
test al, al
jne 0x1800040d5
nop word [rax + rax]
movzx ecx, byte [rbp + r9 - 0x10]
mov eax, 0x81020409
sub ecx, 0x6f
imul r8d, ecx, 0x37
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r9 - 0x10], r8b
inc r9
cmp r9, 0xc
jb 0x180004080
test r11, r11
je 0x1800043a4
mov dword [rbp + 0x67], 0x1d88b2
mov eax, 0x55555556
mov ecx, dword [rbp + 0x67]
mov ebx, 2
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x18000414f
mov ecx, dword [rbp + 0x67]
add ecx, ebx
add ecx, r11d
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x18000411e
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1800041bb
nop word [rax + rax]
mov eax, dword [rbp + 0x67]
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004149
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180004130
jmp 0x1800041bb
mov eax, dword [rbp + 0x67]
mov eax, dword [rbp + 0x67]
mov ecx, dword [rbp + 0x67]
lea eax, [r11 + 3]
add ecx, ebx
imul ecx, eax
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x180004175
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x1800041bb
nop dword [rax]
mov ecx, dword [rbp + 0x67]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp + 0x67]
je 0x1800041a1
dec eax
jmp 0x1800041a3
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x1800041b7
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x180004180
mov rcx, r11
call qword [0x18003ece8]
mov r9, rax
mov dword [rbp + 0x67], 0x1d88b2
mov r8d, dword [rbp + 0x67]
mov eax, 0x55555556
imul r8d
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp r8d, ecx
je 0x18000422f
mov ecx, dword [rbp + 0x67]
add ecx, ebx
add ecx, r9d
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004205
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x18000429b
nop dword [rax]
mov eax, dword [rbp + 0x67]
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004229
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180004210
jmp 0x18000429b
mov eax, dword [rbp + 0x67]
mov eax, dword [rbp + 0x67]
mov ecx, dword [rbp + 0x67]
lea eax, [r9 + 3]
add ecx, ebx
imul ecx, eax
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x180004255
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x18000429b
nop dword [rax]
mov ecx, dword [rbp + 0x67]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp + 0x67]
je 0x180004281
dec eax
jmp 0x180004283
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x180004297
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x180004260
test r9, r9
je case.default.0x1800043c1
lea r8, [rbp + 0x7f]
mov edx, edi
mov rcx, r9
call fcn.180002ba0
mov qword [rbp + 0x7f], rax
mov eax, 0x55555556
mov dword [rbp + 0x67], 0x1d88b2
mov ecx, dword [rbp + 0x67]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180004326
mov ecx, dword [rbp + 0x67]
mov eax, dword [rbp + 0x7f]
add eax, ebx
add ecx, eax
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x1800042f3
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1800045eb
nop dword [rax + rax]
mov eax, dword [rbp + 0x67]
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004319
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180004300
mov rax, qword [rbp + 0x7f]
jmp 0x1800045f3
mov eax, dword [rbp + 0x67]
mov eax, dword [rbp + 0x67]
mov ecx, dword [rbp + 0x67]
mov eax, dword [rbp + 0x7f]
add ecx, ebx
add eax, 3
imul eax, ecx
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x18000434e
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x1800045eb
nop word [rax + rax]
mov ecx, dword [rbp + 0x67]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp + 0x67]
je 0x180004381
dec eax
jmp 0x180004383
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x180004397
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x180004360
mov rax, qword [rbp + 0x7f]
jmp 0x1800045f3
lea eax, [rbx - 0xf]
cmp eax, 0xc
ja case.default.0x1800043c1
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x4608]
add rcx, rdx
jmp rcx
lea rcx, [rbp - 3]
jmp 0x18000440f
lea rcx, [rbp + 0xb]
jmp 0x18000440f
lea rcx, [rbp + 0x19]
jmp 0x18000440f
lea rcx, [rbp + 0x27]
jmp 0x18000440f
lea rcx, [rbp + 0x35]
jmp 0x18000440f
lea rcx, [rbp - 0x42]
jmp 0x18000440f
lea rcx, [rbp - 0x36]
jmp 0x18000440f
lea rcx, [rbp - 0x2a]
jmp 0x18000440f
lea rcx, [rbp - 0x1d]
jmp 0x18000440f
lea rcx, [rbp - 0x58]
jmp 0x18000440f
lea rcx, [rbp + 0x43]
jmp 0x18000440f
lea rcx, [rbp - 0x4d]
jmp 0x18000440f
lea rcx, [rbp - 0x10]
call qword [0x18003ece8]
mov dword [rbp + 0x67], 0x1d88b2
mov ebx, 2
mov r8d, dword [rbp + 0x67]
mov r9, rax
mov eax, 0x55555556
imul r8d
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp r8d, ecx
je 0x18000448f
mov ecx, dword [rbp + 0x67]
add ecx, ebx
add ecx, r9d
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x18000445b
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1800044fb
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rbp + 0x67]
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004489
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180004470
jmp 0x1800044fb
mov eax, dword [rbp + 0x67]
mov eax, dword [rbp + 0x67]
mov ecx, dword [rbp + 0x67]
lea eax, [r9 + 3]
add ecx, ebx
imul ecx, eax
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x1800044b5
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x1800044fb
nop dword [rax]
mov ecx, dword [rbp + 0x67]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp + 0x67]
je 0x1800044e1
dec eax
jmp 0x1800044e3
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x1800044f7
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x1800044c0
test r9, r9
je case.default.0x1800043c1
lea r8, [rbp + 0x7f]
mov edx, edi
mov rcx, r9
call fcn.180002ba0
mov qword [rbp + 0x7f], rax
mov eax, 0x55555556
mov dword [rbp + 0x67], 0x1d88b2
mov ecx, dword [rbp + 0x67]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x180004583
mov ecx, dword [rbp + 0x67]
mov eax, dword [rbp + 0x7f]
add eax, ebx
add ecx, eax
mov dword [rbp + 0x67], ecx
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004553
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1800045eb
nop dword [rax + rax]
mov eax, dword [rbp + 0x67]
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000003
jge 0x180004579
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180004560
mov rax, qword [rbp + 0x7f]
jmp 0x1800045f3
mov eax, dword [rbp + 0x67]
mov eax, dword [rbp + 0x67]
mov ecx, dword [rbp + 0x67]
mov eax, dword [rbp + 0x7f]
add ecx, ebx
add eax, 3
imul eax, ecx
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x1800045ab
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x1800045eb
nop
mov ecx, dword [rbp + 0x67]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp + 0x67]
je 0x1800045d1
dec eax
jmp 0x1800045d3
inc eax
mov dword [rbp + 0x67], eax
mov eax, dword [rbp + 0x67]
and eax, 0x80000001
jge 0x1800045e7
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x1800045b0
mov rax, qword [rbp + 0x7f]
jmp 0x1800045f3
xor eax, eax
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret