Function at 0x180028930
Capabilities:
Hash data via wincrypt
Initialize hashing via wincrypt

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x298]
sub rsp, 0x398
imul eax, edx, 0x1a9
xor r14d, r14d
mov r10, r8
mov dword [rsp + 0x54], edx
mov r8d, dword [rbp + 0x2e8]
mov ebx, edx
mov rsi, rcx
mov dword [rsp + 0x4c], r8d
mov r15d, edx
lea r13d, [r14 + 0x6c]
mov dword [rsp + 0x30], eax
cmp edx, eax
ja 0x180028f53
mov rdx, qword [rsp + 0x70]
lea edi, [r14 + 0x74]
mov r12d, dword [rbp + 0x2e8]
lea r10d, [r14 + 0x61]
mov qword [rbp - 0x38], rdx
mov edx, dword [rbp + 0x2e8]
mov dword [rsp + 0x78], edx
mov rdx, qword [rsp + 0x70]
mov qword [rbp - 0x60], rdx
mov rdx, qword [rsp + 0x70]
imul ecx, ebx, 0x19
mov ebx, dword [rbp + 0x2e8]
mov qword [rsp + 0x40], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x38], rdx
mov dword [rsp + 0x48], ecx
jmp 0x1800289e7
mov r9, qword [rbp + 0x2f8]
mov r11d, 0x43
cmp r15d, 0xf8a
ja 0x180028dae
je 0x180028b5f
cmp r15d, 0x112
ja 0x180028ad2
je 0x180028a7f
mov eax, r15d
sub eax, 0x26
je 0x180028a6e
sub eax, 0x28
je 0x180028a59
sub eax, 0x2d
je 0x180028a4b
mov r9, qword [rsp + 0x40]
cmp eax, 0x33
mov eax, dword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
jne 0x180028f2d
mov dword [rbp + 0x78], 0x730073
mov dword [rbp + 0x7c], 0x65006c
jmp 0x180028f2d
mov eax, dword [rsp + 0x30]
mov word [rbp - 0x58], r11w
jmp 0x180028f23
mov eax, dword [rsp + 0x30]
mov r8d, r14d
mov qword [rbp - 0x38], rsi
mov dword [rsp + 0x4c], r14d
jmp 0x180028f23
mov eax, dword [rsp + 0x30]
mov r11, r14
mov qword [rsp + 0x38], r14
jmp 0x180028f28
cmp qword [0x18007de10], 0
je 0x180028f23
mov edi, 0x3e
mov eax, edi
sub eax, 0x3e
je 0x180028aa7
cmp eax, 1
jne 0x180028ab4
mov qword [0x18007de10], r14
jmp 0x180028ab4
mov rcx, qword [0x18007de10]
call qword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
inc edi
cmp edi, 0x40
jb 0x180028a92
mov eax, dword [rsp + 0x30]
mov edi, 0x74
mov ecx, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
jmp 0x180028f23
cmp r15d, 0x3dc
je 0x180028b39
cmp r15d, 0x7ec
je 0x180028b2f
cmp r15d, 0xc7e
jne 0x180028f23
mov r8d, 1
lea rdx, [0x1800619c0]
lea rcx, [rbp - 0x58]
call fcn.180047330
mov r8d, 5
lea rdx, str.Unini
lea rcx, [rbp - 0x58]
call fcn.180047330
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
jmp 0x180028f23
mov dword [rsp + 0x78], r14d
jmp 0x180028f23
mov r8, qword [rsi]
mov r11, qword [rsp + 0x38]
add r8, 0x368
mov qword [rbp - 0x60], r8
mov r9, qword [r8 + 0x10]
mov r8d, dword [rsp + 0x4c]
mov qword [rsp + 0x40], r9
jmp 0x180028f2d
cmp byte [rsi], 0x2d
jne 0x180028ba0
mov ecx, 0x82
nop dword [rax]
mov eax, ecx
sub eax, 0x81
je 0x180028b84
cmp eax, 1
jne 0x180028b87
mov dword [rsp + 0x78], eax
jmp 0x180028b87
inc rsi
dec ecx
cmp ecx, 0x80
ja 0x180028b70
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x48]
mov qword [rbp + 0x2e0], rsi
cmp dword [r9], 0x10
jne 0x180028f23
mov r14d, 2
lea rdi, [0x180061bb8]
mov r13d, 0x46
nop dword [rax]
lea eax, [r13 - 0x40]
cmp eax, 8
ja case.0x180028bde.67
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x29e34]
add rcx, rdx
jmp rcx
mov rcx, qword [rsi + 8]
lea rax, [rbp - 0x80]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov edx, 0x800c
call qword [sym.imp.ADVAPI32.dll_CryptCreateHash]
mov dword [rsp + 0x50], eax
jmp case.0x180028bde.67
test r14, r14
je 0x180028d82
movzx eax, byte [rdi]
movzx ebx, byte [rsi]
sub ebx, eax
jmp case.0x180028bde.67
mov ecx, dword [rsp + 0x50]
test ecx, ecx
je 0x180028ce4
mov r15d, 0x34
nop
mov eax, r15d
sub eax, 0x34
je 0x180028c54
cmp eax, 1
jne 0x180028cd7
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
mov ecx, dword [rsp + 0x50]
jmp 0x180028cd7
movzx r8d, word [rdi]
lea rdx, [rdi + 4]
mov rcx, qword [rbp - 0x80]
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_CryptHashData]
mov dword [rsp + 0x50], eax
mov ecx, eax
test eax, eax
je 0x180028cd7
mov ebx, 0x50
mov eax, ebx
sub eax, 0x50
je 0x180028cc4
sub eax, 1
je 0x180028c93
cmp eax, 1
jne 0x180028ccc
movzx eax, word [rsp + 0x68]
add word [rdi], ax
jmp 0x180028ccc
movzx ecx, word [rdi]
lea rax, [rsp + 0x68]
add rcx, 4
mov qword [rsp + 0x28], rax
add rcx, rdi
xor r9d, r9d
mov qword [rsp + 0x20], rcx
xor r8d, r8d
mov rcx, qword [rbp - 0x80]
lea edx, [r9 + 2]
call qword [sym.imp.ADVAPI32.dll_CryptSignHashW]
mov ecx, eax
jmp 0x180028ccc
mov dword [rsp + 0x68], 0x100
inc ebx
cmp ebx, 0x53
jb 0x180028c78
mov dword [rsp + 0x50], ecx
inc r15d
cmp r15d, 0x36
jb 0x180028c30
mov ebx, ecx
jmp case.0x180028bde.67
cmp byte [rsi], 0
je 0x180028d36
nop dword [rax]
cmp byte [rdi], 0
je 0x180028d36
test r14, r14
je 0x180028d36
mov ecx, 0xe0
nop
mov eax, ecx
sub eax, 0xde
je 0x180028d24
sub eax, 1
je 0x180028d1c
cmp eax, 1
jne 0x180028d27
movzx eax, byte [rdi]
cmp byte [rsi], al
jne 0x180028d36
jmp 0x180028d27
inc rsi
inc rdi
jmp 0x180028d27
dec r14
dec ecx
cmp ecx, 0xdd
ja 0x180028d00
cmp byte [rsi], 0
jne 0x180028cf0
mov r13d, 0x46
inc r13d
cmp r13d, 0x4c
jb 0x180028bc0
xor r14d, r14d
test ebx, ebx
jne 0x180028d87
mov rsi, qword [rbp + 0x2e0]
mov edi, 0x74
mov r15d, dword [rsp + 0x54]
add rsi, 2
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
lea r13d, [rdi - 8]
mov qword [rbp + 0x2e0], rsi
jmp 0x180028f23
mov ebx, r14d
jmp 0x180028d50
mov r15d, dword [rsp + 0x54]
mov edi, 0x74
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x48]
mov rsi, qword [rbp + 0x2e0]
mov r8d, dword [rsp + 0x4c]
lea r13d, [rdi - 8]
jmp 0x180028f23
cmp r15d, 0x2484
ja 0x180028ee3
je 0x180028ea6
cmp r15d, 0x11ac
je 0x180028e9c
cmp r15d, 0x1728
je 0x180028e20
cmp r15d, 0x1881
je 0x180028e10
mov r9, qword [rsp + 0x40]
mov r11, qword [rsp + 0x38]
cmp r15d, 0x22aa
jne 0x180028f2d
mov dword [rbp + 0x82], 0x330079
mov dword [rbp + 0x86], 0x2e0032
jmp 0x180028f2d
mov word [rbp - 0x51], di
jmp 0x180028f23
mov edx, r10d
mov eax, edx
sub eax, 0x61
je 0x180028e4e
sub eax, 0x1e
je 0x180028e40
cmp eax, 0x1e
jne 0x180028e7c
inc rsi
mov qword [rbp + 0x2e0], rsi
jmp 0x180028e7c
imul r8d, dword [r9]
add r8d, r12d
mov dword [rsp + 0x4c], r8d
jmp 0x180028e7c
movsx ecx, byte [rsi]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x180028e5e
lea r12d, [rcx - 0x30]
jmp 0x180028e7c
cmp dword [r9], 0x10
jne 0x180028e89
lea eax, [rcx - 0x41]
cmp al, 5
ja 0x180028e71
lea r12d, [rcx - 0x37]
jmp 0x180028e7c
lea eax, [rcx - 0x61]
cmp al, 5
ja 0x180028e89
lea r12d, [rcx - 0x57]
add edx, 0x1e
cmp edx, 0xbb
jb 0x180028e23
jmp 0x180028e20
mov eax, dword [rsp + 0x30]
mov r15d, 0x1728
mov ecx, dword [rsp + 0x48]
jmp 0x180028f23
mov word [rbp + 0x80], r10w
jmp 0x180028f23
lea rcx, [rbp - 0x58]
dec rcx
nop dword [rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x180028eb0
movzx eax, word [0x180063e64]
mov word [rcx], ax
movzx eax, word [0x180063e68]
mov ecx, dword [rsp + 0x48]
mov word [rbp - 0x4f], ax
movzx eax, byte [0x180063e6a]
mov byte [rbp - 0x4d], al
mov eax, dword [rsp + 0x30]
jmp 0x180028f23
cmp r15d, 0x33a8
je 0x180028f19
cmp r15d, 0x44a6
je 0x180028f0f
cmp r15d, 0x55a4
jne 0x180028f23
mov word [rbp + 0x90], r14w
mov dword [rbp + 8], 0x730073
jmp 0x180028f23
mov word [rbp + 0x8e], r13w
jmp 0x180028f23
mov dword [rbp + 0x8a], 0x6c0064
mov r11, qword [rsp + 0x38]
mov r9, qword [rsp + 0x40]
add r15d, ecx
mov r10d, 0x61
mov dword [rsp + 0x54], r15d
cmp r15d, eax
jbe 0x1800289e0
mov r10, qword [rbp + 0x2f0]
mov ebx, dword [rbp + 0x2e8]
jmp 0x180028f83
mov rax, qword [rsp + 0x70]
mov r9, qword [rsp + 0x70]
mov r11, qword [rsp + 0x70]
mov qword [rbp - 0x38], rax
mov eax, dword [rbp + 0x2e8]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x60], rax
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x38], r11
lea edx, [rbx - 0x11]
mov dword [rsp + 0x54], ebx
mov dword [rsp + 0x30], edx
mov eax, ebx
cmp ebx, edx
jbe 0x180029a16
mov rbx, qword [rsp + 0x60]
mov r13, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x60]
mov r12d, dword [rbp + 0x2e8]
mov r15, qword [rsp + 0x60]
nop dword [rax + rax]
add eax, 0xffffffdb
cmp eax, 0x89
ja case.0x180028fee.54
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax + 0x29ea0]
mov ecx, dword [rcx + rax*4 + 0x29e58]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
xor eax, eax
lea rdx, [0x180063e74]
lea rcx, [rbp - 0x30]
mov word [rbp - 0x30], ax
lea r8d, [rax + 1]
call fcn.1800470dc
mov r11, qword [rsp + 0x38]
mov edx, dword [rsp + 0x30]
jmp case.0x180028fee.54
test r9, r9
je 0x180029848
mov eax, 0x90
mov dword [rbp - 0x6c], eax
nop dword [rax]
sub eax, 0x8c
je 0x18002981e
sub eax, 1
je 0x180029818
sub eax, 1
je 0x180029079
sub eax, 1
je 0x180029063
cmp eax, 1
jne 0x180029828
mov rax, qword [r9]
mov qword [rbp - 0x80], rax
jmp 0x180029828
mov rax, qword [r9 + 8]
mov qword [rbp - 0x78], rax
mov rax, qword [r9 + 0x10]
mov qword [rsp + 0x70], rax
jmp 0x180029828
mov eax, dword [r9 + 0x18]
and al, 9
cmp al, 1
jne 0x180029828
mov eax, 0x120
mov dword [rbp - 0x70], eax
nop
sub eax, 0x11f
je 0x1800290ce
cmp eax, 1
jne 0x180029803
mov r10, qword [rbp - 0x80]
mov rax, r10
and eax, 7
jne 0x1800290bb
xor eax, eax
lea rcx, [rax + r10]
mov qword [rbp - 0x68], rcx
jmp 0x180029803
neg rax
and eax, 7
lea rcx, [rax + r10]
mov qword [rbp - 0x68], rcx
jmp 0x180029803
mov rdx, qword [rbp - 0x68]
mov rax, qword [rdx + 8]
mov rcx, rax
and rcx, 0xfffffffffffffffc
mov qword [rsp + 0x58], rcx
test al, 2
jne 0x180029803
mov r8, qword [rbp - 0x78]
add rcx, rdx
mov r10, qword [rbp - 0x80]
lea rax, [r8 - 0x48]
add rax, r10
cmp rcx, rax
jb 0x180029803
mov eax, 0x12a
mov dword [rsp + 0x68], eax
nop
sub eax, 0x128
je 0x180029354
sub eax, 1
je 0x180029131
cmp eax, 1
jne 0x1800297ee
mov rbx, rdx
jmp 0x1800297ee
mov rax, qword [rsi]
cmp rdx, qword [rax + 0x20]
jne 0x18002914c
xor ecx, ecx
mov qword [rax + 0x20], rcx
mov rax, qword [rsi]
mov qword [rax + 8], rcx
jmp 0x1800297ee
mov r9d, 0xbb
mov eax, r9d
sub eax, 0xbb
je 0x18002933b
cmp eax, 1
jne 0x18002933f
cmp qword [rbx + 0x18], rbx
je 0x1800291e0
mov edx, 0x9e
mov eax, edx
sub eax, 0x9e
je 0x1800291bf
cmp eax, 0x4b
jne 0x1800291ca
mov rax, qword [rsi]
mov r8, qword [rbp + 0xd8]
mov rdi, qword [rbx + 0x18]
cmp r8, qword [rax + 0x18]
jb 0x1800291ca
mov ecx, 0x1b
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x1a
je 0x1800291b2
cmp eax, 1
jne 0x1800291b6
mov qword [r8 + 0x18], rdi
jmp 0x1800291b6
mov qword [rdi + 0x10], r8
dec ecx
cmp ecx, 0x19
ja 0x1800291a0
jmp 0x1800291ca
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0xd8], rax
add edx, 0x4b
cmp edx, 0x134
jb 0x180029174
jmp 0x18002924c
mov rdi, qword [rbx + 0x28]
lea rdx, [rbx + 0x28]
test rdi, rdi
jne 0x1800291fa
mov rdi, qword [rbx + 0x20]
lea rdx, [rbx + 0x20]
test rdi, rdi
je 0x18002924c
mov r8d, 0xfe
mov eax, r8d
sub eax, 0xfd
je 0x180029232
cmp eax, 1
jne 0x180029240
nop
mov rcx, qword [rdi + 0x28]
lea rax, [rdi + 0x28]
test rcx, rcx
jne 0x18002922a
mov rcx, qword [rdi + 0x20]
lea rax, [rdi + 0x20]
test rcx, rcx
je 0x180029240
mov rdx, rax
mov rdi, rcx
jmp 0x180029210
mov rax, qword [rsi]
cmp rdx, qword [rax + 0x18]
jb 0x180029240
xor eax, eax
mov qword [rdx], rax
dec r8d
cmp r8d, 0xfc
ja 0x180029200
test r13, r13
je 0x18002933f
mov r8d, 0xd3
nop dword [rax + rax]
mov eax, r8d
sub eax, 0xd2
je 0x18002928e
cmp eax, 1
jne 0x180029329
mov rcx, qword [rbx + 0x38]
mov rax, qword [rsi]
add rcx, 0x4a
lea rcx, [rax + rcx*8]
mov qword [rbp + 0xe0], rcx
jmp 0x180029329
mov rcx, qword [rbp + 0xe0]
cmp rbx, qword [rcx]
jne 0x1800292b3
mov qword [rcx], rdi
test rdi, rdi
jne 0x1800292d1
mov rdx, qword [rsi]
mov eax, dword [rbx + 0x38]
mov ecx, dword [rdx + 4]
btr ecx, eax
mov dword [rdx + 4], ecx
jmp 0x180029329
mov rax, qword [rsi]
cmp r13, qword [rax + 0x18]
jb 0x1800292cc
cmp qword [r13 + 0x20], rbx
jne 0x1800292c8
mov qword [r13 + 0x20], rdi
jmp 0x1800292cc
mov qword [r13 + 0x28], rdi
test rdi, rdi
je 0x180029329
mov rax, qword [rsi]
cmp rdi, qword [rax + 0x18]
jb 0x180029329
mov edx, 0x6f
nop
mov eax, edx
sub eax, 0x6e
je 0x180029308
cmp eax, 1
jne 0x180029322
mov qword [rdi + 0x30], r13
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x180029322
mov rax, qword [rsi]
cmp rcx, qword [rax + 0x18]
jb 0x180029322
mov qword [rdi + 0x20], rcx
jmp 0x18002931e
mov rcx, qword [rbx + 0x28]
test rcx, rcx
je 0x180029322
mov rax, qword [rsi]
cmp rcx, qword [rax + 0x18]
jb 0x180029322
mov qword [rdi + 0x28], rcx
mov qword [rcx + 0x30], rdi
dec edx
cmp edx, 0x6d
ja 0x1800292e0
dec r8d
cmp r8d, 0xd1
ja 0x180029260
jmp 0x18002933f
mov r13, qword [rbx + 0x30]
inc r9d
cmp r9d, 0xbd
jb 0x180029152
jmp 0x1800297e1
mov qword [rbp + 0xe8], r8
lea rdx, [rbp + 0xe8]
mov r8, r10
lea rcx, [rbp + 0x100]
mov r9d, 0xe0
call fcn.18000ee40
mov eax, dword [rax]
test eax, eax
jne 0x1800293e9
mov ecx, 0x60
mov r8, qword [rbp - 0x78]
mov r11, qword [rsp + 0x38]
cmp ecx, 0x60
je 0x1800293c5
cmp ecx, 0x123
je 0x1800293b0
mov r9, qword [rsp + 0x40]
cmp ecx, 0x1e6
jne 0x1800293d2
mov rax, qword [rsp + 0x70]
mov qword [r9 + 0x10], rax
jmp 0x1800293d2
mov rax, qword [rsi]
mov r9, qword [rbp - 0x60]
mov qword [rsp + 0x40], r9
sub qword [rax + 0x350], r8
jmp 0x1800293d2
mov r9, qword [rsp + 0x40]
add r11, r8
mov qword [rsp + 0x38], r11
add ecx, 0xc3
cmp ecx, 0x2a9
jb 0x180029382
mov r10, qword [rbp - 0x80]
jmp 0x1800297ea
mov r10d, 0x85
nop
mov eax, r10d
sub eax, 0x82
je 0x18002958a
sub eax, 1
je 0x180029577
sub eax, 1
je 0x180029561
cmp eax, 1
jne 0x1800297c8
mov r9d, 0xd7
cmp r9d, r9d
jne 0x180029548
mov rax, qword [rsp + 0x58]
mov r8, rax
shr r8, 8
test r8, r8
jne 0x180029443
xor eax, eax
mov r14d, eax
jmp 0x180029548
cmp r8, 0xffff
jbe 0x180029457
mov r14d, 0x1f
jmp 0x180029548
mov edx, 3
nop dword [rax]
cmp edx, 3
je 0x18002951b
cmp edx, 0xba
je 0x1800294f9
cmp edx, 0x171
je 0x1800294ce
cmp edx, 0x228
je 0x1800294ac
cmp edx, 0x2df
jne 0x180029536
lea ecx, [r12 + 7]
mov r14, rax
shr r14, cl
lea ecx, [r12 + r12]
and r14d, 1
add r14, rcx
jmp 0x180029531
mov r11d, dword [rsp + 0x48]
mov ecx, r12d
shl r11d, cl
mov r12d, r11d
mov dword [rsp + 0x48], r11d
shr r12d, 0xf
sub r12d, dword [rsp + 0x50]
add r12d, 0xe
jmp 0x180029536
mov r11d, dword [rsp + 0x48]
mov ecx, r12d
mov eax, dword [rsp + 0x50]
add eax, r12d
shl r11d, cl
mov dword [rsp + 0x48], r11d
lea r12d, [r11 - 0x4000]
shr r12d, 0x10
and r12d, 2
add eax, r12d
jmp 0x18002952d
mov r11d, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x50]
shl r11d, cl
mov dword [rsp + 0x48], r11d
lea r12d, [r11 - 0x1000]
shr r12d, 0x10
and r12d, 4
jmp 0x180029536
mov eax, r8d
mov dword [rsp + 0x48], eax
add eax, 0xffffff00
shr eax, 0x10
and eax, 8
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x58]
add edx, 0xb7
cmp edx, 0x393
jbe 0x180029460
add r9d, 0xd7
cmp r9d, 0xd7
jbe 0x180029422
jmp 0x1800297c8
mov rax, qword [rsi]
lea rax, [rax + r14*8]
add rax, 0x250
mov qword [rbp - 0x48], rax
jmp 0x1800297c8
xor eax, eax
mov qword [rbx + 0x38], r14
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x20], rax
jmp 0x1800297c8
mov rdx, qword [rsi]
mov rcx, r14
mov eax, 1
shl eax, cl
test dword [rdx + 4], eax
jne 0x1800295e4
mov edx, 0xf7
mov eax, edx
sub eax, 0xf6
je 0x1800295c5
cmp eax, 1
jne 0x1800295d5
mov rcx, qword [rsi]
mov eax, dword [rcx + 4]
bts eax, r14d
mov dword [rcx + 4], eax
mov rax, qword [rbp - 0x48]
mov qword [rax], rbx
jmp 0x1800295d5
mov rax, qword [rbp - 0x48]
mov qword [rbx + 0x30], rax
mov qword [rbx + 0x18], rbx
mov qword [rbx + 0x10], rbx
dec edx
cmp edx, 0xf5
ja 0x1800295a1
jmp 0x1800297c8
mov edx, 0xe5
nop dword [rax]
mov eax, edx
sub eax, 0xe2
je 0x1800297b2
sub eax, 1
je 0x1800296cd
sub eax, 1
je 0x180029660
cmp eax, 1
jne 0x1800297ba
mov rax, qword [rbp - 0x48]
mov r15, qword [rax]
cmp r14, 0x1f
jne 0x180029636
xor eax, eax
mov ecx, eax
mov rax, qword [rsp + 0x58]
shl rax, cl
mov qword [rbp - 0x40], rax
jmp 0x1800297ba
mov rax, r14
mov ecx, 0x39
shr rax, 1
sub rcx, rax
mov rax, qword [rsp + 0x58]
shl rax, cl
mov qword [rbp - 0x40], rax
jmp 0x1800297ba
mov rax, qword [r15 + 8]
and rax, 0xfffffffffffffffc
cmp rax, qword [rsp + 0x58]
je 0x180029720
mov edx, 0xc1
cmp edx, 0xc1
je 0x1800296f2
cmp edx, 0x171
je 0x1800296ec
cmp edx, 0x221
jne 0x180029709
mov r8, qword [rbp + 0xf0]
mov rax, qword [r8]
test rax, rax
je 0x1800296a4
mov r15, rax
jmp 0x180029709
mov rax, qword [rsi]
cmp r8, qword [rax + 0x18]
jb 0x1800296cd
mov ecx, 0xa0
mov eax, ecx
sub eax, 0xa0
je 0x1800296dd
sub eax, 1
je 0x1800296d7
cmp eax, 1
jne 0x1800296e0
mov qword [rbx + 0x18], rbx
mov qword [rbx + 0x10], rbx
mov edx, 0xe3
jmp 0x1800297ba
mov qword [rbx + 0x30], r15
jmp 0x1800296e0
mov qword [r8], rbx
inc ecx
cmp ecx, 0xa3
jb 0x1800296b2
jmp 0x180029709
shl qword [rbp - 0x40], 1
jmp 0x180029709
mov rcx, qword [rbp - 0x40]
shr rcx, 0x3f
add rcx, 4
lea rcx, [r15 + rcx*8]
mov qword [rbp + 0xf0], rcx
add edx, 0xb0
cmp edx, 0x2d1
jb 0x180029678
jmp 0x180029660
mov edx, 0x8a
cmp edx, 0x8a
je 0x180029790
cmp edx, 0x12b
jne 0x18002979b
mov rax, qword [rsi]
mov rcx, qword [rax + 0x18]
cmp r15, rcx
jb 0x1800296cd
mov r8, qword [rbp + 0xf8]
cmp r8, rcx
jb 0x1800296cd
mov ecx, 0x117
mov eax, ecx
sub eax, 0x117
je 0x180029777
sub eax, 0x70
je 0x18002976b
cmp eax, 0x70
je 0x1800296cd
jmp 0x180029783
xor eax, eax
mov qword [rbx + 0x18], r15
mov qword [rbx + 0x30], rax
jmp 0x180029783
mov qword [r8 + 0x18], rbx
mov qword [r15 + 0x10], rbx
mov qword [rbx + 0x10], r8
add ecx, 0x70
cmp ecx, 0x267
jb 0x180029752
jmp 0x18002979b
mov rax, qword [r15 + 0x10]
mov qword [rbp + 0xf8], rax
add edx, 0xa1
cmp edx, 0x1cc
jb 0x180029725
jmp 0x180029660
mov dword [rsp + 0x54], 0x26
dec edx
cmp edx, 0xe1
ja 0x1800295f0
dec r10d
cmp r10d, 0x81
ja 0x1800293f0
mov r10, qword [rbp - 0x80]
mov r11, qword [rsp + 0x38]
mov r9, qword [rsp + 0x40]
mov r8, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x68]
mov eax, dword [rsp + 0x68]
dec eax
mov dword [rsp + 0x68], eax
cmp eax, 0x127
ja 0x180029110
mov eax, dword [rbp - 0x70]
dec eax
mov dword [rbp - 0x70], eax
cmp eax, 0x11e
ja 0x180029090
jmp 0x180029828
mov qword [rbp - 0x60], r9
jmp 0x180029828
mov r9, qword [rsp + 0x70]
mov qword [rsp + 0x40], r9
mov eax, dword [rbp - 0x6c]
dec eax
mov dword [rbp - 0x6c], eax
cmp eax, 0x8b
ja 0x180029030
test r9, r9
jne 0x180029021
mov edx, dword [rsp + 0x30]
mov qword [rsp + 0x58], r11
jmp case.0x180028fee.54
xor eax, eax
mov word [rbp + 0x20], ax
jmp case.0x180028fee.54
mov dword [rbp + 0x1a], 0x6c0064
jmp case.0x180028fee.54
mov eax, dword [0x180063e98]
mov dword [rbp + 0xa0], eax
movzx eax, word [0x180063e9c]
mov word [rbp + 0xa4], ax
jmp case.0x180028fee.54
mov ecx, 0xd0
nop dword [rax]
cmp ecx, 0xd0
je 0x1800298a6
cmp ecx, 0x94b0
je case.0x180028fee.37
jmp 0x1800298b2
mov rax, rsi
sub rax, qword [rbp - 0x38]
mov qword [rsp + 0x58], rax
add ecx, 0x93e0
cmp ecx, 0x127c0
jbe 0x180029890
call qword [rsp + 0x60]
mov r11, qword [rsp + 0x38]
mov edx, dword [rsp + 0x30]
jmp case.0x180028fee.54
test r10, r10
je case.0x180028fee.54
cmp dword [rsp + 0x78], 0
je 0x1800298f4
test r8d, r8d
je 0x1800298f4
mov eax, r8d
neg eax
mov dword [r10], eax
jmp case.0x180028fee.54
mov dword [r10], r8d
jmp case.0x180028fee.54
mov eax, 0x6c
mov word [rbp + 0x1e], ax
jmp case.0x180028fee.54
mov eax, 0x6c
mov dword [rbp + 0xe], 0x610065
mov word [rbp + 0xc], ax
jmp case.0x180028fee.54
mov r8d, 4
lea rdx, [0x180063f06]
lea rcx, [rbp + 0x98]
call fcn.180047124
mov r11, qword [rsp + 0x38]
xor eax, eax
mov edx, dword [rsp + 0x30]
mov word [rbp + 0xa0], ax
jmp case.0x180028fee.54
lea rcx, [rbp - 0x58]
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x180029956
mov eax, dword [0x180063fc0]
mov dword [rcx], eax
jmp case.0x180028fee.54
mov dword [rbp + 0x12], 0x330079
mov dword [rbp + 0x16], 0x2e0032
jmp case.0x180028fee.54
mov eax, dword [0x1800632f0]
mov dword [rbp - 0x26], eax
movzx eax, word [0x1800632f4]
mov word [rbp - 0x22], ax
jmp case.0x180028fee.54
mov eax, dword [0x180063fc4]
lea r9, [rbp - 0x30]
mov dword [rbp - 0x22], eax
lea rdx, [rbp - 0x58]
movzx eax, word [0x180063fc8]
lea rcx, [rbp + 0x150]
mov r8d, 0xf5
mov word [rbp - 0x1e], ax
call fcn.180024590
mov r11, qword [rsp + 0x38]
mov edx, dword [rsp + 0x30]
movups xmm2, xmmword [rax]
movq qword [rsp + 0x60], xmm2
jmp case.0x180028fee.54
movsd xmm0, qword [str.le32]
movzx eax, word [0x180063fd8]
movsd qword [rbp - 0x2e], xmm0
mov word [rbp - 0x26], ax
mov eax, dword [rsp + 0x54]
mov r9, qword [rsp + 0x40]
dec eax
mov r8d, dword [rsp + 0x4c]
mov r10, qword [rbp + 0x2f0]
mov dword [rsp + 0x54], eax
cmp eax, edx
ja 0x180028fc0
mov ebx, dword [rbp + 0x2e8]
lea esi, [rbx - 0x13]
cmp ebx, esi
jbe case.0x180028fee.37
mov r14, qword [rsp + 0x60]
lea edi, [rbx - 0x9c]
mov rbx, qword [rbp + 0x2f8]
movabs rdx, 0x6c006c0064
mov r15, qword [rsp + 0x60]
mov r12, qword [rsp + 0x60]
mov r13, qword [rsp + 0x60]
mov eax, dword [rbp + 0x2e8]
cmp edi, 0x12
ja case.default.0x180029a6d
lea r8, [0x180000000]
mov ecx, dword [r8 + rdi*4 + 0x29f2c]
add rcx, r8
jmp rcx
mov rax, qword [rbp + 0x2e0]
mov rcx, qword [rbp + 0x2f0]
mov edx, dword [rax]
mov rcx, qword [rcx]
call qword [rsp + 0x60]
mov rax, qword [rbp + 0x2f0]
mov rcx, qword [rax]
call r14
cmp eax, 1
je 0x180029afb
mov ebx, 0xbf
nop dword [rax]
cmp ebx, 0xbf
je 0x180029ace
cmp ebx, 0x14d
jne 0x180029ae6
mov byte [rsp + 0x58], 0
mov rax, qword [rsp + 0x58]
add rsp, 0x398
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r8, qword [rbp + 0x2f8]
mov edx, 0x58
mov rcx, qword [rbp + 0x2f0]
call fcn.1800064c0
add ebx, 0x8e
cmp ebx, 0x1db
jb 0x180029aa0
mov rbx, qword [rbp + 0x2f8]
movabs rdx, 0x6c006c0064
jmp 0x180029e16
mov r8d, 0xa
lea rdx, [rbp + 0xc6]
lea ecx, [r8 - 8]
call fcn.180047840
movabs rdx, 0x6c006c0064
jmp 0x180029e16
lea r9, [rbp + 0x78]
mov edx, 0x2b
mov r8d, 0xf5
lea rcx, [rbp + 0x150]
call fcn.180024590
movabs rdx, 0x6c006c0064
mov r14, qword [rax]
jmp 0x180029e16
mov ecx, 0xd7
mov eax, ecx
sub eax, 0xd7
je 0x180029b75
cmp eax, 0x4b
je case.0x180028fee.37
jmp 0x180029b7a
mov byte [rsp + 0x58], 1
add ecx, 0x4b
cmp ecx, 0x16d
jb 0x180029b61
mov rax, qword [rbp + 0x2f8]
mov rcx, qword [rax]
call r15
mov rcx, qword [rbp + 0x2f0]
mov qword [rcx], rax
test rax, rax
jne 0x180029af4
mov ebx, 0xfb
nop word [rax + rax]
mov eax, ebx
sub eax, 0xfb
je 0x180029bd0
sub eax, 9
je 0x180029bc9
cmp eax, 9
je case.0x180028fee.37
jmp 0x180029be8
mov byte [rsp + 0x58], 0
jmp 0x180029be8
mov r8, qword [rbp + 0x2f8]
mov edx, 0x58
call fcn.1800064c0
mov rcx, qword [rbp + 0x2f0]
add ebx, 9
cmp ebx, 0x116
jb 0x180029bb0
mov rbx, qword [rbp + 0x2f8]
movabs rdx, 0x6c006c0064
jmp 0x180029e16
xor eax, eax
mov word [rbp + 0xa6], ax
jmp 0x180029e16
mov qword [rbp - 6], rdx
jmp 0x180029e16
mov r8d, 1
lea rdx, [0x180061fec]
lea rcx, [rbp + 0xb8]
call fcn.1800470dc
movabs rdx, 0x6c006c0064
mov qword [rbp + 0xca], rdx
jmp 0x180029e16
mov eax, dword [0x180063fdc]
mov dword [rbp - 0x18], 0x73
mov dword [rbp - 0x16], eax
movzx eax, word [0x180063fe0]
mov word [rbp - 0x12], ax
jmp 0x180029e16
mov rax, qword [rbp + 0x2f8]
cmp qword [rax], 0
je 0x180029ab0
mov rbx, rax
jmp 0x180029e16
mov dword [rbp - 8], 0x2e
jmp 0x180029e16
mov r8d, 0xa
lea rdx, [rbp - 0xa]
lea ecx, [r8 - 8]
call fcn.180047840
movabs rdx, 0x6c006c0064
jmp 0x180029e16
movzx eax, word [0x180063ffa]
movsd xmm0, qword [0x180063ff2]
mov word [rbp + 0xae], ax
xor eax, eax
mov word [rbp + 0xb0], ax
movsd qword [rbp + 0xa6], xmm0
jmp 0x180029e16
mov r8d, 2
lea rdx, [0x1800620d4]
lea rcx, [rbp + 0xb8]
call fcn.180047124
movabs rdx, 0x6c006c0064
jmp 0x180029e16
lea r9, [rbp + 0xb8]
mov edx, 0x6f
mov r8d, 0xf5
lea rcx, [rbp + 0x100]
call fcn.180024590
lea r9, [rbp - 0x18]
mov edx, 0xc
mov r8d, 0xf5
lea rcx, [rbp + 0x1a0]
mov r12, qword [rax]
call fcn.180024590
movabs rdx, 0x6c006c0064
mov r13, qword [rax]
jmp 0x180029e16
lea r9, [rbp + 8]
mov edx, 0x57
mov r8d, 0xf5
lea rcx, [rbp + 0x1f0]
call fcn.180024590
lea r9, [rbp + 0x98]
mov edx, 0x4b
mov r8d, 0xf5
lea rcx, [rbp + 0x240]
movups xmm2, xmmword [rax]
movq qword [rsp + 0x60], xmm2
call fcn.180024590
movabs rdx, 0x6c006c0064
mov r15, qword [rax]
jmp 0x180029e16
mov rax, qword [rbp + 0x2f0]
xor ecx, ecx
mov qword [rax], rcx
call r12
mov rcx, rax
call r13
mov qword [rbx], rax
movabs rdx, 0x6c006c0064
jmp 0x180029e16
mov eax, dword [0x180064008]
movsd xmm0, qword [str.sleay3]
mov dword [rbp + 0xc2], eax
movzx eax, word [0x18006400c]
mov word [rbp + 0xc6], ax
movsd qword [rbp + 0xba], xmm0
jmp 0x180029e16
mov eax, dword [0x180064010]
mov dword [rbp - 0x12], eax
mov eax, dword [0x180064018]
mov dword [rbp - 0xe], eax
movzx eax, word [0x18006401c]
mov word [rbp - 0xa], ax
mov eax, dword [rbp + 0x2e8]
dec eax
dec edi
mov dword [rbp + 0x2e8], eax
cmp eax, esi
ja 0x180029a52
jmp case.0x180028fee.37