Function at 0x180158830
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x40
xor ebp, ebp
mov rsi, r8
mov rbx, rcx
cmp edx, 0xd2
jg 0x180159518
je 0x1801594f8
add edx, 0xfffffffd
cmp edx, 0xcc
ja case.0x18015affd.40296
movsxd rax, edx
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x15b20c]
mov ecx, dword [rdx + rax*4 + 0x15b0c8]
add rcx, rdx
jmp rcx
mov eax, dword [r8]
cmp eax, 0xffffffff
jl 0x18015af99
mov dword [rbx + 0x720], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movsxd rax, dword [r8]
test eax, eax
js 0x18015af99
mov qword [rbx + 0xa98], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb20], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb21], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb1e], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb19], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edx, dword [r8]
test edx, edx
mov ecx, dword [rbx + 0xb8c]
setne al
mov byte [rbx + 0xb13], al
mov eax, ecx
and eax, 0xffffffef
or ecx, 0x10
test edx, edx
cmove ecx, eax
mov eax, ebp
mov dword [rbx + 0xb8c], ecx
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [r8]
test ecx, ecx
setne al
mov byte [rbx + 0xb1c], al
test ecx, ecx
je 0x180158992
mov dword [rbx + 0x580], 5
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [rbx + 0x580], 5
jne case.0x180158881.91
mov dword [rbx + 0x580], ebp
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb14], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [r8]
test ecx, ecx
setne al
mov byte [rbx + 0xb1d], al
test ecx, ecx
je 0x180158a02
mov eax, 4
mov byte [rbx + 0xb1c], bpl
mov dword [rbx + 0x580], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, ebp
mov dword [rbx + 0x580], eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb09], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0x20c49b
ja 0x18015af99
imul eax, eax, 0x3e8
mov dword [rbx + 0x318], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x320], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 2
ja 0x18015af99
mov dword [rbx + 0x770], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb0b], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 3
ja 0x18015af99
mov dword [rbx + 0x570], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movsxd rax, dword [r8]
mov qword [rbx + 0x578], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movsxd rdi, dword [r8]
cmp rdi, 0xffffffffffffffff
jl 0x18015af99
cmp qword [rbx + 0x238], rdi
jge 0x180158b28
lea rcx, [rbx + 0x9f8]
mov rax, qword [rcx]
cmp qword [rbx + 0x228], rax
jne 0x180158b28
xor edx, edx
call fcn.1801587a0
mov qword [rbx + 0x228], rbp
mov qword [rbx + 0x238], rdi
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb1b], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb17], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb16], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb18], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0xffffffff
jl 0x18015af99
mov dword [rbx + 0x220], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
and eax, 7
mov dword [rbx + 0x224], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
je 0x180158c14
mov edi, 1
mov byte [rbx + 0xb1c], bpl
mov dword [rbx + 0x580], edi
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, ebp
mov dword [rbx + 0x580], ebp
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb05], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
je case.0x180158881.91
mov dword [rbx + 0x580], ebp
mov eax, ebp
mov word [rbx + 0xb1c], bp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
cmp eax, 3
jl 0x180158c8d
mov eax, 1
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov byte [rbx + 0x584], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edx, dword [r8]
test edx, edx
jne 0x180158cbe
mov dword [rbx + 0x214], ebp
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, edx
shr eax, 4
and al, 1
mov byte [rbx + 0xe76], al
test dl, 0x10
je 0x180158cd6
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
mov ecx, ebp
nop dword [rax + rax]
mov eax, ecx
inc ecx
bt edx, eax
jb 0x180158d00
cmp ecx, 0x1f
jl 0x180158ce0
mov eax, 4
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov dword [rbx + 0x214], edx
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb0a], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0xffff
ja 0x18015af99
mov dword [rbx + 0x1e8], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edx, dword [r8]
test edx, edx
jne 0x180158d6f
mov dword [rbx + 0x218], ebp
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, edx
shr eax, 4
and al, 1
mov byte [rbx + 0xe86], al
test dl, 0x10
je 0x180158d87
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
mov ecx, ebp
nop dword [rax]
mov eax, ecx
inc ecx
bt edx, eax
jb 0x180158da3
cmp ecx, 0x1f
jl 0x180158d90
jmp case.0x18015affd.40309
mov dword [rbx + 0x218], edx
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 7
ja 0x18015af99
mov dword [rbx + 0x574], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [r8]
test ecx, ecx
je 0x180158dfe
cmp ecx, 1
jne 0x180158f36
mov byte [rbx + 0xb28], cl
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov byte [rbx + 0xb28], bpl
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb0d], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb0c], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 3
ja 0x18015af99
mov dword [rbx + 0x750], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb10], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb0f], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb11], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 2
ja 0x18015af99
mov dword [rbx + 0x758], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb12], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 2
ja 0x18015af99
mov dword [rbx + 0x754], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 2
ja 0x180158f36
mov dword [rbx + 0x75c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ebp, 0x2b
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movsxd rax, dword [r8]
cmp eax, 0xffffffff
jl 0x18015af99
mov qword [rbx + 0x328], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x330], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x334], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0xffff
ja 0x18015af99
mov dword [rbx + 0x210], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0x20c49b
ja 0x18015af99
imul eax, eax, 0x3e8
mov dword [rbx + 0x308], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x308], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0x20c49b
ja 0x18015af99
imul eax, eax, 0x3e8
mov dword [rbx + 0x30c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x30c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movsxd rax, dword [r8]
cmp eax, 0xffffffff
jl 0x18015af99
mov qword [rbx + 0x348], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rcx, [rbx + 0x8e0]
xor edx, edx
call fcn.1801587a0
mov ebp, 4
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb06], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [r8]
cmp ecx, 0xffff
ja 0x18015af99
call fcn.18016cc00
mov word [rbx + 0x240], ax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [r8]
cmp ecx, 0xffff
ja 0x18015af99
call fcn.18016cbe0
mov dword [rbx + 0x244], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0x5f8], al
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je case.0x180158881.91
mov byte [rcx + 0x310], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
test byte [r8], 3
setne al
mov byte [rbx + 0x5f9], al
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je case.0x180158881.91
mov byte [rcx + 0x311], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp qword [rbx + 0xd20], rbp
jne 0x18015af99
mov ecx, dword [r8]
mov eax, 0x80000
cmp ecx, eax
jg 0x1801591b4
cmp ecx, 1
jge 0x1801591a8
mov eax, 0x4000
mov dword [rbx + 0x724], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edx, 0x400
mov eax, ecx
cmp ecx, edx
cmovl eax, edx
mov dword [rbx + 0x724], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb22], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movsxd rax, dword [r8]
test eax, eax
js 0x18015af99
mov qword [rbx + 0x748], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 2
ja 0x18015af99
mov byte [rbx + 0x740], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb23], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb24], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb25], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0x5fb], al
mov byte [rbx + 0x6c3], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
sete al
mov byte [rbx + 0xb26], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
sete al
mov byte [rbx + 0xb27], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0x1ff
ja 0x18015af99
mov dword [rbx + 0x778], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 0x1ff
ja 0x18015af99
mov dword [rbx + 0x77c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
mov dword [rbx + 0xa48], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
mov dword [rbx + 0xa4c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
mov dword [rbx + 0xa50], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
dec eax
cmp eax, 0xa
ja case.default.0x180159376
cdqe
mov ecx, dword [rdx + rax*4 + 0x15b2dc]
add rcx, rdx
jmp rcx
mov edi, 1
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 2
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 3
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 4
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 5
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 6
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 7
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 8
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 9
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 0xa
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, 0xb
mov eax, ebp
mov dword [rbx + 0xa60], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edi, ebp
mov dword [rbx + 0xa60], ebp
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
mov dword [rbx + 0x11b0], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
mov dword [rbx + 0x11b4], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb2a], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rcx + 0xa88], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp edx, 0x2711
jg 0x18015997e
je 0x180159965
add edx, 0xffffff2c
cmp edx, 0x60
ja case.0x18015affd.40296
movsxd rax, edx
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x15b38c]
mov ecx, dword [rdx + rax*4 + 0x15b308]
add rcx, rdx
jmp rcx
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb15], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb03], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
movzx eax, byte [r8]
and al, 1
mov byte [rbx + 0xb04], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0xaa0], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
cmp eax, 1
jg 0x18015af99
test eax, eax
setne al
mov byte [rbx + 0xb3c], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
mov dword [rbx + 0x21c], eax
and eax, 0xfffffffa
neg eax
sbb eax, eax
and eax, 4
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x310], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb34], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb39], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0x6c0], al
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je case.0x180158881.91
mov byte [rcx + 0x388], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
test byte [r8], 3
setne al
mov byte [rbx + 0xb3a], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
test byte [r8], 3
setne al
mov byte [rbx + 0x6c1], al
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je case.0x180158881.91
mov byte [rcx + 0x389], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov edx, dword [r8]
mov ecx, 0x200000
cmp edx, ecx
jg 0x1801596f7
mov eax, 0x4000
mov ecx, edx
cmp edx, eax
cmovl ecx, eax
mov dword [rbx + 0x728], ecx
mov rcx, qword [rbx + 0xd28]
call qword [fcn.180222220]
mov eax, ebp
mov qword [rbx + 0xd28], rbp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb3d], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb29], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb2b], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0xa8c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0xa90], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb2d], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb2e], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb2f], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb30], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb31], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x314], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb32], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp dword [r8], ebp
setne al
mov byte [rbx + 0xb36], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0xad0], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r8]
test eax, eax
js 0x18015af99
mov dword [rbx + 0x31c], eax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
test byte [r8], 1
je 0x180159908
cmp qword [rbx + 0xb48], rbp
jne case.0x180158881.91
call fcn.18016e1d0
mov qword [rbx + 0xb48], rax
test rax, rax
jne case.0x180158881.91
mov eax, 0x1b
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rcx, [rbx + 0xb48]
call fcn.18016e170
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [rbx + 0xb50]
test rax, rax
jne 0x180159944
call fcn.18016d220
mov qword [rbx + 0xb50], rax
test rax, rax
je 0x180159cc9
mov edx, dword [rsi]
mov rcx, rax
call fcn.18016d210
mov ebp, eax
test eax, eax
je case.0x180158881.91
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0x1f0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp edx, 0x27f4
jg 0x18015a786
je 0x18015a76d
add edx, 0xffffd8ee
cmp edx, 0xde
ja case.0x18015affd.40296
movsxd rax, edx
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x15b514]
mov ecx, dword [rdx + rax*4 + 0x15b3f0]
add rcx, rdx
jmp rcx
mov rdx, qword [r8]
lea rcx, [rbx + 0x888]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8b0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8a8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x828]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rsi, qword [r8]
mov edi, 1
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], r15
test rsi, rsi
je 0x180159ab4
mov rax, qword [rbx + 0x238]
cmp rax, 0xffffffffffffffff
je 0x180159ab4
test rax, rax
js 0x180159a8d
xor edx, edx
lea rcx, [rbx + 0x9f8]
call fcn.1801587a0
mov rax, qword [rbx + 0x238]
mov ecx, edi
test rax, rax
cmovne rcx, rax
call qword [fcn.180222218]
mov r14, rax
test rax, rax
jne 0x180159a94
mov ebp, 0x1b
jmp 0x180159ac5
mov r8, qword [rbx + 0x238]
test r8, r8
je 0x180159aab
mov rdx, rsi
mov rcx, r14
call fcn.18019ddf6
mov qword [rbx + 0x9f8], r14
jmp 0x180159ac5
lea rcx, [rbx + 0x9f8]
mov rdx, rsi
call fcn.1801587a0
mov ebp, eax
mov rax, qword [rbx + 0x9f8]
mov r15, qword [rsp + 0x68]
mov r14, qword [rsp + 0x60]
mov qword [rbx + 0x228], rax
mov eax, ebp
mov dword [rbx + 0x580], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
lea rcx, [rbx + 0x9f8]
xor edx, edx
mov qword [rbx + 0x228], rax
call fcn.1801587a0
mov edi, 1
mov eax, ebp
mov dword [rbx + 0x580], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
test rdx, rdx
je 0x180159b7b
cmp byte [rdx], bpl
jne 0x180159b7b
call fcn.180170300
mov rdi, rax
test rax, rax
jne 0x180159b52
mov ebp, 0x1b
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rcx, [rbx + 0x7d0]
mov rdx, rdi
call fcn.1801587a0
mov rcx, rdi
mov ebp, eax
call qword [fcn.180222220]
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rcx, [rbx + 0x7d0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x360], rax
mov eax, ebp
mov dword [rbx + 0x580], 2
mov byte [rbx + 0xb1c], bpl
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp byte [rbx + 0x1313], bpl
je 0x180159be4
mov rcx, qword [rbx + 0x1248]
call qword [fcn.180222220]
mov qword [rbx + 0x1248], rbp
mov byte [rbx + 0x1313], bpl
mov rdx, qword [rsi]
lea rcx, [rbx + 0x848]
call fcn.1801587a0
mov ebp, eax
mov rax, qword [rbx + 0x848]
mov qword [rbx + 0x1248], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8b8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x350], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x738], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7a8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
test rdx, rdx
je 0x180159cf1
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdx + rax], bpl
jne 0x180159c90
cmp rax, 0x7a1200
ja 0x18015af99
mov rcx, qword [rbx + 0x1250]
call fcn.18015b990
test rax, rax
jne 0x180159cdb
mov rcx, qword [rbx + 0x1250]
call fcn.18015b9f0
mov qword [rbx + 0x1250], rbp
mov eax, 0x1b
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov qword [rbx + 0x1250], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rbx + 0x1250]
call fcn.18015b9f0
mov rax, qword [rbx + 0xe0]
mov qword [rbx + 0x1250], rbp
test rax, rax
je 0x180159d19
cmp qword [rax + 0xb0], rbp
jne 0x180159d31
mov rcx, qword [rbx + 0xb40]
call fcn.18015fc70
mov rcx, qword [rbx + 0xb40]
call fcn.18015fc10
mov qword [rbx + 0xb40], rbp
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7b0]
call fcn.1801587a0
movzx r9d, byte [rbx + 0xb05]
xor edx, edx
mov r8, qword [rbx + 0xb40]
mov rcx, rbx
mov ebp, eax
call fcn.18015ff80
test rax, rax
mov qword [rbx + 0xb40], rax
mov ecx, 0x1b
cmove ebp, ecx
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdi, qword [r8]
test rdi, rdi
je case.0x180158881.91
lea rdx, [0x1801b0d30]
mov rcx, rdi
call fcn.180170060
test eax, eax
je 0x180159de9
mov edx, 2
mov rcx, rbx
mov r8d, edx
call fcn.180170700
mov rcx, qword [rbx + 0xb40]
call fcn.18015fc70
mov edx, 2
mov rcx, rbx
call fcn.180170740
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rdx, [0x1801b0d34]
mov rcx, rdi
call fcn.180170060
test eax, eax
je 0x180159e34
mov edx, 2
mov rcx, rbx
mov r8d, edx
call fcn.180170700
mov rcx, qword [rbx + 0xb40]
call fcn.18015fcd0
mov edx, 2
mov rcx, rbx
call fcn.180170740
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rdx, [0x1801b0d3c]
mov rcx, rdi
call fcn.180170060
test eax, eax
je 0x180159e60
xor edx, edx
mov rcx, rbx
call fcn.180160270
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
lea rdx, [0x1801b0d44]
mov rcx, rdi
call fcn.180170060
test eax, eax
je 0x180159e8a
mov rcx, rbx
call fcn.1801601d0
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp qword [rbx + 0xb40], rbp
jne 0x180159eaa
mov r9b, 1
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.18015ff80
mov qword [rbx + 0xb40], rax
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], bpl
jne 0x180159eb1
cmp rax, 0x7a1200
ja 0x18015af99
mov rcx, rdi
call qword [fcn.180222230]
mov rdi, rax
test rax, rax
je 0x180159f6b
cmp qword [rbx + 0xb40], rbp
je 0x180159f6b
mov edx, 2
mov rcx, rbx
mov r8d, edx
call fcn.180170700
mov r8d, 0xb
lea rcx, [0x1801b0d50]
mov rdx, rdi
call fcn.180170230
test eax, eax
je 0x180159f1a
mov r8b, 1
lea rax, [rdi + 0xb]
jmp 0x180159f20
xor r8b, r8b
mov rax, rdi
mov rdx, qword [rbx + 0xb40]
xor r9d, r9d
mov byte [rsp + 0x38], 1
mov rcx, rbx
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
call fcn.18015ef10
mov edx, 2
mov rcx, rbx
call fcn.180170740
mov rcx, rdi
call qword [fcn.180222220]
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rcx, rdi
mov ebp, 0x1b
call qword [fcn.180222220]
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7b8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x830]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x200], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x1e0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7e8]
call fcn.1801587a0
cmp qword [rbx + 0x7e8], 0
mov ebp, eax
setne al
mov byte [rbx + 0xb0e], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7d8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7e0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x820]
call fcn.1801587a0
cmp qword [rbx + 0x820], 0
mov ebp, eax
setne al
mov byte [rbx + 0xb1f], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x1f8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp byte [rbx + 0x1312], bpl
je 0x18015a0d1
mov rcx, qword [rbx + 0x1240]
call qword [fcn.180222220]
mov qword [rbx + 0x1240], rbp
mov byte [rbx + 0x1312], bpl
mov rdx, qword [rsi]
lea rcx, [rbx + 0x850]
call fcn.1801587a0
mov ebp, eax
mov rax, qword [rbx + 0x850]
mov qword [rbx + 0x1240], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rsi]
lea r8, [rbx + 0x8f0]
lea rdx, [rbx + 0x8e8]
call fcn.18015b860
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8e8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8f0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8f8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x990]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x530], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x538], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x528], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x560], rax
mov qword [rbx + 0x1258], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2f8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rsi]
lea r8, [rbx + 0x908]
lea rdx, [rbx + 0x900]
call fcn.18015b860
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x900]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x908]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x910]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x840]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x1d8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x1d0], rax
test rax, rax
jne case.0x180158881.91
lea ecx, [rax + 2]
call fcn.18019de80
mov qword [rbx + 0x1d0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2b8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x300], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x788]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x798]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7f0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x810]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x800]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
test rdx, rdx
je case.0x180158881.91
cmp byte [rdx], bpl
je case.0x180158881.91
lea rcx, [rbx + 0x8e0]
call fcn.1801587a0
mov ebp, eax
test eax, eax
jne case.0x180158881.91
mov ebp, 4
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7c8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x868]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8c0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8d0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x558], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [rbx + 0xe0]
mov edi, 1
mov rsi, qword [r8]
test rax, rax
je 0x18015a533
lea r8d, [rdi + 1]
mov edx, edi
mov rcx, rbx
call fcn.180170700
cmp dword [rbx + 0xc8], 2
jne 0x18015a4db
mov qword [rbx + 0xc0], rbp
mov dword [rbx + 0xc8], ebp
mov rcx, qword [rbx + 0xe0]
mov rax, qword [rbx + 0xb40]
cmp qword [rcx + 0xb0], rax
jne 0x18015a4f9
mov qword [rbx + 0xb40], rbp
mov rax, qword [rbx + 0xd48]
cmp qword [rcx + 0xb8], rax
jne 0x18015a510
mov qword [rbx + 0xd48], rbp
mov ecx, dword [rcx + 8]
mov edx, edi
mov rax, qword [rbx + 0xe0]
dec ecx
mov dword [rax + 8], ecx
mov rcx, rbx
call fcn.180170740
mov rax, rbp
mov qword [rbx + 0xe0], rbp
test rsi, rsi
je case.0x180158881.91
cmp dword [rsi], 0x7e117a1e
jne 0x18015a54d
mov qword [rbx + 0xe0], rsi
jmp 0x18015a556
test rax, rax
je case.0x180158881.91
mov r8d, 2
mov edx, edi
mov rcx, rbx
call fcn.180170700
mov rax, qword [rbx + 0xe0]
mov ecx, dword [rax + 8]
mov rax, qword [rbx + 0xe0]
inc ecx
mov dword [rax + 8], ecx
mov rcx, qword [rbx + 0xe0]
test byte [rcx + 4], 8
je 0x18015a5a1
lea rax, [rcx + 0x80]
mov qword [rbx + 0xc0], rax
mov dword [rbx + 0xc8], 2
mov rdx, rcx
cmp qword [rcx + 0xb0], rbp
je 0x18015a5d1
mov rcx, qword [rbx + 0xb40]
call fcn.18015fc10
mov rcx, qword [rbx + 0xe0]
mov rdx, rcx
mov rax, qword [rcx + 0xb0]
mov qword [rbx + 0xb40], rax
cmp qword [rcx + 0xb8], rbp
je 0x18015a5f6
mov rax, qword [rcx + 0xc0]
mov qword [rbx + 0x718], rax
mov rax, qword [rdx + 0xb8]
mov qword [rbx + 0xd48], rax
mov edx, edi
mov rcx, rbx
call fcn.180170740
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x730], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x290], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2a0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2b0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x960]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x968]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xa58], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x918]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x920]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x928]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x208], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x1360], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xa80], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0x358], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp edx, 0x4e2b
jg 0x18015abf9
je 0x18015abb0
add edx, 0xffffd80a
cmp edx, 0x4b
ja case.0x18015affd.40296
movsxd rax, edx
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x15b670]
mov ecx, dword [rdx + rax*4 + 0x15b5f4]
add rcx, rdx
jmp rcx
mov rdx, qword [r8]
lea rcx, [rbx + 0x890]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x9a0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0xa00]
call fcn.1801587a0
cmp qword [rbx + 0xa00], 0
mov ebp, eax
je case.0x180158881.91
mov dword [rbx + 0x214], 0x80
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [rsi]
lea rcx, [rbx + 0x368]
xor r8d, r8d
call fcn.180162610
mov ebp, eax
test eax, eax
jne case.0x180158881.91
mov dword [rbx + 0x580], 3
mov byte [rbx + 0xb1c], al
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x838]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x950]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x958]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xae8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x790]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7a0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7f8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x818]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x808]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x870]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8c8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x8d8]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xac8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x7c0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x9c0]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov byte [rbx + 0xb35], bpl
mov rdx, qword [r8]
lea rcx, [rbx + 0x998]
call fcn.1801587a0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov byte [rbx + 0xb35], 1
jmp 0x18015aa2f
mov rax, qword [r8]
mov qword [rbx + 0x568], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
lea rcx, [rbx + 0x9a8]
call fcn.1801587a0
cmp qword [rbx + 0x9a8], 0
mov ebp, eax
setne al
mov byte [rbx + 0xb37], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xaf0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2e0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2f0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp qword [rbx + 0xb48], rbp
jne 0x18015ab09
call fcn.18016e1d0
mov qword [rbx + 0xb48], rax
test rax, rax
je 0x180159cc9
mov rdi, qword [rsi]
lea rcx, [rbx + 0x9b8]
mov rdx, rdi
call fcn.1801587a0
mov ebp, eax
test eax, eax
jne 0x18015b0ba
test rdi, rdi
je case.0x180158881.91
mov rdx, qword [rbx + 0xb48]
mov r8, rdi
mov rcx, rbx
call fcn.18016e210
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp qword [rbx + 0xb50], rbp
jne 0x18015ab6d
call fcn.18016d220
mov qword [rbx + 0xb50], rax
test rax, rax
je 0x180159cc9
mov rdi, qword [rsi]
lea rcx, [rbx + 0x9b0]
mov rdx, rdi
call fcn.1801587a0
mov ebp, eax
test eax, eax
jne 0x18015b0ba
test rdi, rdi
je case.0x180158881.91
mov rcx, qword [rbx + 0xb50]
mov rdx, rdi
call fcn.18016d260
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0x248], rax
test rax, rax
jne 0x18015abe3
lea rax, [fcn.18019de62]
mov byte [rcx + 0xb01], bpl
mov qword [rcx + 0x248], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov byte [rcx + 0xb01], 1
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp edx, 0x4f30
jg 0x18015ae45
je 0x18015ae2c
add edx, 0xffffb1d4
cmp edx, 0xcf
ja case.0x18015affd.40296
movsxd rax, edx
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x15b708]
mov ecx, dword [rdx + rax*4 + 0x15b6bc]
add rcx, rdx
jmp rcx
mov rax, qword [r8]
mov qword [rbx + 0x268], rax
test rax, rax
setne al
mov byte [rbx + 0xcdc], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x270], rax
test rax, rax
setne al
mov byte [rbx + 0xcdc], al
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x278], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x250], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x260], rax
test rax, rax
jne 0x18015acea
lea rax, [fcn.18019de68]
mov byte [rbx + 0xb00], bpl
mov qword [rbx + 0x260], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov byte [rbx + 0xb00], 1
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x230], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2c0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2c8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2d0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x280], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x288], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x298], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x2a8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0x258], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xa68], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xa70], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rbx + 0xa78], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0xac0], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
cmp edx, 0x763e
jg 0x18015afda
je 0x18015afc1
cmp edx, 0x75a4
jg 0x18015af18
je 0x18015aef5
sub edx, 0x4f3b
je 0x18015aedc
sub edx, 0x12
je 0x18015aec3
sub edx, 2
je 0x18015aeaa
cmp edx, 0x2654
jne case.0x18015affd.40296
mov rax, qword [r8]
cmp rax, 0xffffffffffffffff
jl 0x18015af99
mov qword [rcx + 0x328], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0x2e8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0x2d8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0xaf8], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
cmp rax, 0xffffffffffffffff
jl 0x18015af99
mov qword [rcx + 0x348], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
sub edx, 0x75a5
je 0x18015af91
sub edx, 3
je 0x18015af6f
sub edx, 0x19
je 0x18015af51
cmp edx, 1
jne case.0x18015affd.40296
mov rax, qword [r8]
test rax, rax
js 0x18015af99
mov qword [rcx + 0x340], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
test rax, rax
js 0x18015af99
mov qword [rcx + 0x338], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdi, qword [r8]
cmp rdi, 0xffffffffffffffff
jl 0x18015af99
cmp qword [rcx + 0x238], rdi
jge 0x180158b28
add rcx, 0x9f8
jmp 0x180158b0e
mov rax, qword [r8]
test rax, rax
jns 0x18015afab
mov eax, 0x2b
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov qword [rcx + 0x748], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [r8]
mov qword [rcx + 0x578], rax
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
add edx, 0xffff629d
cmp edx, 0x13
ja case.0x18015affd.40296
movsxd rax, edx
lea rdx, [0x180000000]
mov eax, dword [rdx + rax*4 + 0x15b7d8]
add rax, rdx
jmp rax
mov rdx, qword [r8]
add rcx, 0xa08
call fcn.1801586e0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
add rcx, 0xa10
call fcn.1801586e0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
add rcx, 0xa18
call fcn.1801586e0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
add rcx, 0xa20
call fcn.1801586e0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
add rcx, 0xa28
call fcn.1801586e0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r8]
add rcx, 0xa30
call fcn.1801586e0
mov ebp, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ebp, 0x30
mov eax, ebp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret