Function at 0x18003c690
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
mov rax, qword [0x1800a0238]
xor rax, rsp
mov qword [rbp + 0x17], rax
lea edi, [rdx + 0x2c6]
mov qword [rbp - 1], r8
mov dword [rbp - 0x69], edi
mov r13, r9
mov r9, r8
mov ebx, edx
mov r14, rcx
cmp edx, edi
ja 0x18003ce30
mov r11, qword [rbp - 1]
xor esi, esi
movzx r10d, byte [rsp + 0x50]
mov r12d, 0x5465
mov edx, dword [rbp - 0x69]
mov r8d, dword [rbp - 0x69]
mov r15, qword [rbp - 1]
mov qword [rbp - 0x79], r11
mov byte [rsp + 0x50], r10b
mov dword [rsp + 0x54], edx
mov dword [rsp + 0x58], r8d
lea rcx, [0x180000000]
cmp ebx, 0x4905
ja 0x18003c92d
je 0x18003ce30
cmp ebx, 0x2017
ja 0x18003c82c
je 0x18003c805
cmp ebx, 0x52c
ja 0x18003c7b2
je 0x18003c7a0
mov eax, ebx
sub eax, 0x50e
je 0x18003c78f
sub eax, 0xa
je 0x18003c76e
cmp eax, 0xa
jne case.0x18003dd46.24748
mov ecx, r8d
mov eax, 2
imul ecx, edx
sub eax, ecx
imul edx, eax
mov dword [rsp + 0x54], edx
jmp case.0x18003dd46.24748
test r8b, 1
je 0x18003de62
lea edx, [r8*2 + 4]
and edx, 8
add edx, r8d
mov dword [rsp + 0x54], edx
jmp case.0x18003dd46.24748
mov rax, qword [r14 + 0x10]
mov r8d, dword [rax]
mov dword [rsp + 0x58], r8d
jmp case.0x18003dd46.24748
mov ecx, r8d
mov eax, 2
imul ecx, edx
sub eax, ecx
imul edx, eax
jmp 0x18003c755
mov eax, ebx
sub eax, 0x536
je 0x18003c7f0
sub eax, 0xa
je 0x18003ce30
cmp eax, 0x1acd
jne case.0x18003dd46.24748
mov qword [r13], rsi
mov edx, 0xffffffff
mov rcx, qword [r14 + 0xb8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movzx r10d, byte [rsp + 0x50]
jmp 0x18003de41
mov eax, edx
mov dword [rbp - 0x7d], esi
neg eax
and eax, 0xfffffff
mov dword [r13], eax
jmp case.0x18003dd46.24748
cmp qword [r14 + 0x38], 0
je 0x18003c814
lea rax, [r14 + 0x28]
mov qword [r13], rax
mov rcx, qword [r14 + 0xb8]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
movzx r10d, byte [rsp + 0x50]
jmp 0x18003de41
cmp ebx, 0x48e7
ja 0x18003c8fc
je 0x18003c8d3
mov eax, ebx
sub eax, 0x2021
je 0x18003c8c5
sub eax, 0xa
je 0x18003ce30
cmp eax, 0x28b2
jne case.0x18003dd46.24748
test r9, r9
jne 0x18003c892
lea r9, str.outlen___NULL
mov dword [rbp - 0x71], esi
lea r8, [0x180082820]
mov edx, 0x5836
lea rcx, [rbp - 0x71]
call fcn.18000e4c0
mov edx, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x58]
movzx r10d, byte [rsp + 0x50]
mov r11, qword [rbp - 0x79]
test r13, r13
jne case.0x18003dd46.24748
lea r9, str.out___NULL
mov dword [rbp - 0x71], esi
lea r8, [0x180082820]
mov edx, 0x5836
lea rcx, [rbp - 0x71]
call fcn.18000e4c0
movzx r10d, byte [rsp + 0x50]
jmp 0x18003de41
cmp qword [r13], 0
setne byte [rbp - 0x7d]
jmp case.0x18003dd46.24748
cmp dword [r9], 3
jae 0x18003c8f0
mov eax, 0x5e28
cmp eax, eax
je 0x18003de6c
add eax, 0x25
cmp eax, 0x5e28
jbe 0x18003c8e0
mov dword [r9], 3
jmp case.0x18003dd46.24748
mov eax, ebx
sub eax, 0x48f1
je 0x18003c921
cmp eax, 0xa
jne case.0x18003dd46.24748
mov eax, dword [r14]
neg eax
mov dword [rbp - 0x7d], esi
sbb cl, cl
mov byte [r13 + 2], cl
jmp case.0x18003dd46.24748
mov word [r13], 0x101
jmp case.0x18003dd46.24748
cmp ebx, 0x6098
ja 0x18003dd1e
je 0x18003dd04
mov eax, ebx
sub eax, 0x4da9
je 0x18003dcfc
sub eax, 0x14
je 0x18003c96e
cmp eax, 0xa
jne case.0x18003dd46.24748
cmp dword [r14], 0x63
je 0x18003de91
mov eax, 2
jmp 0x18003ce33
lea r12, [r14 + 0x10]
mov qword [r12], r13
cmp byte [r13], 0
je 0x18003dced
mov dword [rbp - 0x71], 0x4dbd
nop dword [rax + rax]
mov eax, dword [r14]
cmp eax, 0x63
ja case.0x18003c9b5.11
movzx eax, byte [rcx + rax + 0x3dfb0]
mov ecx, dword [rcx + rax*4 + 0x3df80]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
lea rcx, [r14 + 8]
mov r9d, 0x73b9
call fcn.180043890
sub eax, 1
je 0x18003c9ee
cmp eax, 4
jne 0x18003ca14
mov dword [r14], 1
jmp 0x18003dcc0
mov ecx, 0x4cb3
mov eax, ecx
sub eax, 0x4cb3
je 0x18003de87
cmp eax, 0x4f
je 0x18003dcc0
add ecx, 0x4f
cmp ecx, 0x4d02
jbe 0x18003c9f3
mov ecx, 0x2b24
nop dword [rax]
mov eax, ecx
sub eax, 0x2b24
je 0x18003ca3d
sub eax, 0x30
je 0x18003ce30
cmp eax, 0x30
je 0x18003dcc0
jmp 0x18003ca44
mov dword [rbp - 0x7d], 4
add ecx, 0x30
cmp ecx, 0x2b84
jbe 0x18003ca20
jmp 0x18003dcc0
cmp qword [r14 + 0x28], 0
jne 0x18003ca90
mov qword [rsp + 0x28], rsi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov edx, 0x30af
xor ecx, ecx
call fcn.180050ca0
mov qword [r14 + 0x28], rax
test rax, rax
je 0x18003de73
mov dword [r14], 2
jmp 0x18003dcc0
mov ebx, 0x42e
mov eax, ebx
sub eax, 0x478
je 0x18003caa8
cmp eax, 0x4a
jne 0x18003caf2
mov r15, rsi
jmp 0x18003caf2
mov qword [rsp + 0x28], rsi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov edx, 0x30af
xor ecx, ecx
call fcn.180050ca0
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov qword [r14 + 0x28], r15
add ebx, 0x4a
cmp ebx, 0x4c2
jbe 0x18003ca95
mov dword [r14], 2
jmp 0x18003dcc0
mov ebx, 0x100e
nop
mov eax, ebx
sub eax, 0x1042
je 0x18003cb33
cmp eax, 0x1a
jne 0x18003cb23
mov ebx, 0x105c
add ebx, 0x1a
cmp ebx, 0x105c
jbe 0x18003cb10
jmp 0x18003dcc0
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
mov r9d, 0x73b9
lea rcx, [r14 + 8]
call fcn.180043890
test eax, eax
je 0x18003cccc
cmp eax, 6
je 0x18003cc3a
cmp eax, 0xb
jne 0x18003cce3
mov ebx, 0x718
mov eax, ebx
sub eax, 0x718
je 0x18003cc03
sub eax, 0x60
je 0x18003cbcc
sub eax, 0x60
je 0x18003cba5
sub eax, 0x60
je 0x18003cb99
cmp eax, 0x60
je 0x18003cb1e
jmp 0x18003cc2b
mov dword [r14], 5
jmp 0x18003cc2b
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, r15
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov qword [r14 + 0x28], r15
mov r15, rsi
jmp 0x18003cc2b
mov rcx, qword [r14 + 8]
xor r9d, r9d
mov qword [rsp + 0x40], rsi
xor r8d, r8d
mov dword [rsp + 0x38], 0x541e
xor edx, edx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.1800156f0
mov qword [r15 + 8], rax
mov qword [r14 + 8], rsi
jmp 0x18003cc2b
xor r9d, r9d
mov dword [rbp - 0x61], esi
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x61]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
add ebx, 0x60
cmp ebx, 0x898
jbe 0x18003cb73
mov rax, qword [r14 + 0x28]
cmp qword [rax + 0x20], 0
jne 0x18003cc51
mov dword [r14], 0x63
jmp 0x18003cb1e
mov eax, 0x2fc
cmp eax, eax
jne 0x18003cc82
mov rax, qword [r14 + 0x28]
mov rdx, qword [rax + 0x20]
mov qword [r14 + 0x28], rdx
mov eax, dword [rdx]
test eax, eax
je 0x18003cc91
cmp eax, 3
jne 0x18003cda0
mov eax, 9
mov dword [r14], eax
mov eax, 0x2fc
add eax, 0x41
cmp eax, 0x2fc
jbe 0x18003cc58
jmp 0x18003cb1e
mov ecx, 0x200b
mov eax, ecx
sub eax, 0x200b
je 0x18003ccb4
cmp eax, 0x36
jne 0x18003ccbf
cmp dword [rdx], 2
jne 0x18003cda0
mov eax, 3
jmp 0x18003cc7a
mov rax, qword [rdx + 0x20]
mov rdx, rax
mov qword [r14 + 0x28], rax
add ecx, 0x36
cmp ecx, 0x2041
jbe 0x18003cc96
jmp 0x18003cc75
mov eax, 0x6558
cmp eax, eax
je 0x18003c964
add eax, 0x31
cmp eax, 0x6558
jbe 0x18003ccd3
mov ecx, 0x6bbe
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x6bbe
je 0x18003de87
cmp eax, 0x2d
je 0x18003cb1e
add ecx, 0x2d
cmp ecx, 0x6beb
jbe 0x18003ccf0
jmp 0x18003cb23
mov eax, 0x2143
cmp eax, 0x2161
jne 0x18003ce71
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
lea rcx, [r14 + 8]
mov r9d, 0x73b9
call fcn.180043890
test eax, eax
je 0x18003cdfb
cmp eax, 6
je 0x18003cd69
cmp eax, 0xa
jne 0x18003ce1d
mov dword [r14], 4
jmp 0x18003ce6c
mov rax, qword [r14 + 0x28]
cmp qword [rax + 0x20], 0
jne 0x18003cd80
mov dword [r14], 0x63
jmp 0x18003ce6c
mov eax, 0x31dd
cmp eax, eax
jne 0x18003cdef
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
mov qword [r14 + 0x28], rcx
mov eax, dword [rcx]
test eax, eax
je 0x18003cdaa
cmp eax, 3
je 0x18003cde3
mov eax, 8
jmp 0x18003ce33
mov edx, 0x1ad8
nop
mov eax, edx
sub eax, 0x1b09
je 0x18003cdc0
cmp eax, 0x31
je 0x18003cdea
jmp 0x18003cdd8
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
mov qword [r14 + 0x28], rcx
cmp dword [rcx], 2
jne 0x18003cda0
mov dword [r14], 3
add edx, 0x31
cmp edx, 0x1b3a
jbe 0x18003cdb0
mov dword [r14], 9
mov eax, 0x31dd
add eax, 0x33
cmp eax, 0x31dd
jbe 0x18003cd87
jmp 0x18003ce6c
mov ecx, 0x7225
mov eax, ecx
sub eax, 0x7225
je 0x18003c964
cmp eax, 0x35
je 0x18003ce6c
add ecx, 0x35
cmp ecx, 0x725a
jbe 0x18003ce00
mov ecx, 0x23dc
mov eax, ecx
sub eax, 0x23dc
je 0x18003ce5a
cmp eax, 0x54
jne 0x18003ce61
mov eax, dword [rbp - 0x7d]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.18005fbe0
mov rbx, qword [rsp + 0x148]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [rbp - 0x7d], 4
add ecx, 0x54
cmp ecx, 0x2430
jbe 0x18003ce22
mov eax, 0x2161
add eax, 0x1e
cmp eax, 0x2161
jbe 0x18003cd20
jmp 0x18003dcc0
mov esi, 0x264
nop dword [rax]
mov eax, esi
sub eax, 0x2b9
je 0x18003ceb5
cmp eax, 0x55
jne 0x18003cea3
mov esi, 0x30e
add esi, 0x55
cmp esi, 0x30e
jbe 0x18003ce90
xor esi, esi
jmp 0x18003dcc0
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
mov r9d, 0x73b9
lea rcx, [r14 + 8]
call fcn.180043890
test eax, eax
je 0x18003cfc8
sub eax, 1
je 0x18003cff1
cmp eax, 0xa
jne 0x18003d025
mov ebx, 0x7030
nop word [rax + rax]
mov eax, ebx
sub eax, 0x7030
je 0x18003cf8f
sub eax, 0x41
je 0x18003cf30
sub eax, 0x41
je 0x18003cf21
cmp eax, 0x41
je 0x18003ce9e
jmp 0x18003cfb9
xor r15d, r15d
mov dword [r14], 5
jmp 0x18003cfb9
mov rcx, qword [r14 + 8]
xor eax, eax
mov qword [rsp + 0x40], rax
xor r9d, r9d
mov dword [rsp + 0x38], 0x541e
xor r8d, r8d
mov qword [rsp + 0x30], rax
xor edx, edx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.1800156f0
mov qword [r15 + 8], rax
mov r9d, 0x66a0
mov rcx, qword [r14 + 0x28]
xor r8d, r8d
mov rdx, r15
mov qword [r14 + 8], 0
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov qword [r14 + 0x28], r15
jmp 0x18003cfb9
xor eax, eax
lea rdx, [rbp - 0x59]
xor r9d, r9d
mov dword [rbp - 0x59], eax
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
add ebx, 0x41
cmp ebx, 0x70f3
jbe 0x18003cf00
mov ecx, 0x3104
nop dword [rax]
mov eax, ecx
sub eax, 0x3104
je 0x18003c964
cmp eax, 0x23
je 0x18003ce9e
add ecx, 0x23
cmp ecx, 0x3127
jbe 0x18003cfd0
mov ecx, 0x6343
mov eax, ecx
sub eax, 0x6343
je 0x18003d013
sub eax, 0xb
je 0x18003ce30
cmp eax, 0xb
je 0x18003ce9e
jmp 0x18003d01a
mov dword [rbp - 0x7d], 7
add ecx, 0xb
cmp ecx, 0x6359
jbe 0x18003cff6
mov ecx, 0xe4c
nop word [rax + rax]
mov eax, ecx
sub eax, 0xe4c
je 0x18003de87
cmp eax, 0x3d
je 0x18003ce9e
add ecx, 0x3d
cmp ecx, 0xe89
jbe 0x18003d030
jmp 0x18003cea3
mov ebx, 0x22c8
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x22dc
je 0x18003d083
cmp eax, 0x14
jne 0x18003d073
mov ebx, 0x22f0
add ebx, 0x14
cmp ebx, 0x22f0
jbe 0x18003d060
jmp 0x18003dcc0
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
lea rcx, [r14 + 8]
mov r9d, 0x73b9
call fcn.180043890
test eax, eax
je 0x18003d0b6
cmp eax, 9
jne 0x18003d0cd
mov dword [r14], 6
jmp 0x18003d06e
mov eax, 0x64e9
cmp eax, eax
je 0x18003c964
add eax, 0x26
cmp eax, 0x64e9
jbe 0x18003d0bd
mov ecx, 0x5cdf
mov eax, ecx
sub eax, 0x5cdf
je 0x18003de87
cmp eax, 0x5f
je 0x18003d06e
add ecx, 0x5f
cmp ecx, 0x5d3e
jbe 0x18003d0d2
jmp 0x18003d073
mov ebx, 0x22f6
mov eax, ebx
sub eax, 0x22f6
je 0x18003d119
cmp eax, 0x43
jne 0x18003d109
mov ebx, 0x2339
add ebx, 0x43
cmp ebx, 0x2339
jbe 0x18003d0f6
jmp 0x18003dcc0
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
mov r9d, 0x73b9
lea rcx, [r14 + 8]
call fcn.180043890
cmp eax, 0xe
ja case.0x18003d156.6
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x3e014]
add rcx, rdx
jmp rcx
mov ebx, 0x3756
nop dword [rax]
mov eax, ebx
sub eax, 0x3756
je 0x18003d203
sub eax, 0x2c
je 0x18003d194
sub eax, 0x2c
je 0x18003d18c
cmp eax, 0x2c
jne 0x18003d22b
mov dword [r14], 3
jmp 0x18003d104
mov r15, rsi
jmp 0x18003d22b
mov rcx, qword [r14 + 8]
xor r9d, r9d
mov qword [rsp + 0x40], rsi
xor r8d, r8d
mov dword [rsp + 0x38], 0x541e
xor edx, edx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.1800156f0
mov qword [r15 + 8], rax
mov r9d, 0x66a0
mov rcx, qword [r14 + 0x28]
xor r8d, r8d
mov rdx, r15
mov qword [r14 + 8], rsi
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x18003d1fd
mov dword [r14], 0x63
jmp 0x18003d22b
mov qword [r14 + 0x28], rcx
jmp 0x18003d22b
xor r9d, r9d
mov dword [rbp - 0x51], esi
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x51]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
add ebx, 0x2c
cmp ebx, 0x37da
jbe 0x18003d160
mov ebx, 0x1fa5
nop
mov eax, ebx
sub eax, 0x1fa5
je 0x18003d2a5
sub eax, 0x44
je 0x18003d281
sub eax, 0x44
je 0x18003d261
cmp eax, 0x44
je 0x18003d104
jmp 0x18003d306
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x18003d272
mov qword [r14 + 0x28], rcx
mov r15, rsi
mov dword [r14], 3
jmp 0x18003d306
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, r15
call fcn.18001d4f0
cmp eax, 1
je 0x18003d306
mov eax, 0xa
jmp 0x18003ce33
xor r9d, r9d
mov dword [rbp - 0x49], 1
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x49]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 8]
xor r9d, r9d
mov qword [rsp + 0x40], rsi
xor r8d, r8d
mov dword [rsp + 0x38], 0x541e
xor edx, edx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.1800156f0
mov qword [r15 + 8], rax
mov qword [r14 + 8], rsi
add ebx, 0x44
cmp ebx, 0x2071
jbe 0x18003d240
mov ebx, 0x25af
nop word [rax + rax]
mov eax, ebx
sub eax, 0x25af
je 0x18003d35b
sub eax, 0x29
je 0x18003d339
cmp eax, 0x29
je 0x18003d180
jmp 0x18003d3a5
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x18003d352
mov dword [r14], 0x63
mov r15, rsi
jmp 0x18003d3a5
mov qword [r14 + 0x28], rcx
mov r15, rsi
jmp 0x18003d3a5
xor r9d, r9d
mov dword [rbp - 0x41], 4
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x41]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
add ebx, 0x29
cmp ebx, 0x2601
jbe 0x18003d320
mov ebx, 0x17d7
nop dword [rax]
mov eax, ebx
sub eax, 0x17d7
je 0x18003d3ec
sub eax, 0x26
je 0x18003d3e7
sub eax, 0x26
je 0x18003d3de
cmp eax, 0x26
je 0x18003d104
jmp 0x18003d450
mov dword [r14], 3
jmp 0x18003d450
mov r15, rsi
jmp 0x18003d450
xor r9d, r9d
mov dword [rbp - 0x39], 5
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x39]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x18003d44c
mov dword [r14], 0x63
jmp 0x18003d450
mov qword [r14 + 0x28], rcx
add ebx, 0x26
cmp ebx, 0x1849
jbe 0x18003d3c0
mov ebx, 0x1e0e
mov eax, ebx
sub eax, 0x1e0e
je 0x18003d4d2
sub eax, 0x16
je 0x18003d4b2
sub eax, 0x16
je 0x18003d490
sub eax, 0x16
je 0x18003d487
cmp eax, 0x16
je 0x18003d104
jmp 0x18003d4fe
mov dword [r14], 3
jmp 0x18003d4fe
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x18003d4a9
mov dword [r14], 0x63
mov r15, rsi
jmp 0x18003d4fe
mov qword [r14 + 0x28], rcx
mov r15, rsi
jmp 0x18003d4fe
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, r15
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
jmp 0x18003d4fe
xor r9d, r9d
mov dword [rbp - 0x31], 6
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x31]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
add ebx, 0x16
cmp ebx, 0x1e66
jbe 0x18003d464
mov dword [r14], 1
jmp 0x18003d104
mov dword [r14], 7
jmp 0x18003d104
mov eax, 0x114f
cmp eax, eax
je 0x18003c964
add eax, 5
cmp eax, 0x114f
jbe 0x18003d52c
mov ecx, 0x79c6
mov eax, ecx
sub eax, 0x79c6
je 0x18003de73
cmp eax, 0x2b
je 0x18003d104
add ecx, 0x2b
cmp ecx, 0x79f1
jbe 0x18003d541
mov eax, 0x5069
cmp eax, eax
je 0x18003de7d
add eax, 0x1e
cmp eax, 0x5069
jbe 0x18003d569
mov ecx, 0x7c16
nop
mov eax, ecx
sub eax, 0x7c16
je 0x18003de87
cmp eax, 0x5d
je 0x18003d104
add ecx, 0x5d
cmp ecx, 0x7c73
jbe 0x18003d580
jmp 0x18003d109
cmp qword [r14 + 0x28], 0
jne 0x18003d5d2
mov edx, 0x41e8
xor ecx, ecx
call fcn.180014370
mov qword [r14 + 0x28], rax
test rax, rax
je 0x18003de73
mov dword [r14], 8
jmp 0x18003dcc0
mov ebx, 0x1903
mov eax, ebx
sub eax, 0x1903
je 0x18003d5f5
sub eax, 5
je 0x18003d5ef
cmp eax, 5
jne 0x18003d62b
mov r15, rsi
jmp 0x18003d62b
mov qword [r14 + 0x28], r15
jmp 0x18003d62b
mov edx, 0x41e8
xor ecx, ecx
call fcn.180014370
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
add ebx, 5
cmp ebx, 0x190d
jbe 0x18003d5d7
mov dword [r14], 8
jmp 0x18003dcc0
mov ebx, 0x55bd
mov eax, ebx
sub eax, 0x561a
je 0x18003d663
cmp eax, 0x5d
jne 0x18003dad8
mov ebx, 0x5677
jmp 0x18003dad8
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
mov r9d, 0x73b9
lea rcx, [r14 + 8]
call fcn.180043890
cmp eax, 0xc
ja case.0x18003d6a0.6
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x3e050]
add rcx, rdx
jmp rcx
mov ebx, 0x3e1
mov eax, ebx
sub eax, 0x3e1
je 0x18003d727
sub eax, 0x3e
je 0x18003d6d2
cmp eax, 0x3e
jne 0x18003d74f
mov r15, rsi
mov dword [r14], 9
mov ebx, 0x5677
jmp 0x18003dad8
mov rcx, qword [r14 + 8]
xor r9d, r9d
mov qword [rsp + 0x40], rsi
xor r8d, r8d
mov dword [rsp + 0x38], 0x541e
xor edx, edx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.1800156f0
mov qword [r15 + 8], rax
mov r9d, 0x66a0
mov rcx, qword [r14 + 0x28]
xor r8d, r8d
mov rdx, r15
mov qword [r14 + 8], rsi
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
jmp 0x18003d74f
xor r9d, r9d
mov dword [rbp - 0x29], esi
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x29]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
add ebx, 0x3e
cmp ebx, 0x45d
jbe 0x18003d6a7
mov ebx, 0x2af4
mov eax, ebx
sub eax, 0x2af4
je 0x18003d7e5
sub eax, 0x3c
je 0x18003d7ae
sub eax, 0x3c
je 0x18003d784
cmp eax, 0x3c
je 0x18003d659
jmp 0x18003d811
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, r15
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov r15, rsi
mov dword [r14], 9
jmp 0x18003d811
mov rcx, qword [r14 + 8]
xor r9d, r9d
mov qword [rsp + 0x40], rsi
xor r8d, r8d
mov dword [rsp + 0x38], 0x541e
xor edx, edx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.1800156f0
mov qword [r15 + 8], rax
mov qword [r14 + 8], rsi
jmp 0x18003d811
xor r9d, r9d
mov dword [rbp - 0x21], 1
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x21]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
add ebx, 0x3c
cmp ebx, 0x2ba8
jbe 0x18003d763
mov ebx, 0x7275
mov eax, ebx
sub eax, 0x7275
je 0x18003d847
sub eax, 1
je 0x18003d83e
cmp eax, 1
je 0x18003d659
jmp 0x18003d891
mov dword [r14], 9
jmp 0x18003d891
xor r9d, r9d
mov dword [rbp - 0x19], 4
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x19]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
inc ebx
cmp ebx, 0x7277
jbe 0x18003d825
mov ebx, 0x69d6
mov eax, ebx
sub eax, 0x69d6
je 0x18003d8b4
cmp eax, 0x25
je 0x18003d659
jmp 0x18003d905
xor r9d, r9d
mov dword [rbp - 0x11], 5
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 0x11]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov dword [r14], 9
add ebx, 0x25
cmp ebx, 0x69fb
jbe 0x18003d8a0
mov ebx, 0x5cdc
mov eax, ebx
sub eax, 0x5cdc
je 0x18003d929
cmp eax, 0x4f
je 0x18003d659
jmp 0x18003d97a
xor r9d, r9d
mov dword [rbp - 9], 6
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp - 9]
mov ecx, 0x61b6
call fcn.18002bb50
mov r15, rax
test rax, rax
je 0x18003de73
mov rcx, qword [r14 + 0x28]
mov r9d, 0x66a0
xor r8d, r8d
mov rdx, rax
call fcn.18001d4f0
cmp eax, 1
jne case.0x18003c9b5.11
mov dword [r14], 9
add ebx, 0x4f
cmp ebx, 0x5d2b
jbe 0x18003d915
mov dword [r14], 7
mov ebx, 0x5677
jmp 0x18003dad8
mov rax, qword [r14 + 0x28]
cmp qword [rax + 0x20], 0
jne 0x18003d9b2
mov dword [r14], 0x63
mov ebx, 0x5677
jmp 0x18003dad8
mov ecx, 0x621a
mov eax, ecx
sub eax, 0x621a
je 0x18003d9ce
cmp eax, 0x1d
je 0x18003da44
jmp 0x18003da49
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
mov qword [r14 + 0x28], rcx
mov eax, dword [rcx]
test eax, eax
je 0x18003d9f2
cmp eax, 3
jne 0x18003cda0
mov dword [r14], 9
jmp 0x18003da44
cmp qword [rcx + 0x20], 0
je 0x18003cda0
mov edx, 0x4def
mov eax, edx
sub eax, 0x4def
je 0x18003da2d
sub eax, 0x4f
je 0x18003da1e
cmp eax, 0x4f
jne 0x18003da39
mov dword [r14], 3
jmp 0x18003da39
mov rax, qword [r14 + 0x28]
cmp dword [rax], 2
jne 0x18003cda0
jmp 0x18003da39
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 0x20]
mov qword [r14 + 0x28], rcx
add edx, 0x4f
cmp edx, 0x4e8d
jbe 0x18003da02
mov ecx, 0x6237
add ecx, 0x1d
cmp ecx, 0x6237
jbe 0x18003d9b7
mov ebx, 0x5677
jmp 0x18003dad8
mov dword [r14], 1
mov ebx, 0x5677
jmp 0x18003dad8
mov ecx, 0x4f9d
mov eax, ecx
sub eax, 0x4f9d
je 0x18003c964
cmp eax, 0x56
je 0x18003d659
add ecx, 0x56
cmp ecx, 0x4ff3
jbe 0x18003da72
mov ecx, 0x5e69
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x5e69
je 0x18003de7d
cmp eax, 0x23
je 0x18003d659
add ecx, 0x23
cmp ecx, 0x5e8c
jbe 0x18003daa0
mov eax, 0x7a9a
cmp eax, eax
je 0x18003de87
add eax, 0x36
cmp eax, 0x7a9a
jbe 0x18003dac8
add ebx, 0x5d
cmp ebx, 0x5677
jbe 0x18003d647
jmp 0x18003dcc0
mov eax, 0x1b09
cmp eax, eax
jne 0x18003dc02
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
lea rcx, [r14 + 8]
mov r9d, 0x73b9
call fcn.180043890
test eax, eax
je 0x18003dbb7
cmp eax, 8
je 0x18003db3c
cmp eax, 0xa
jne 0x18003dbe6
mov dword [r14], 8
jmp 0x18003dbfd
mov rax, qword [r14 + 0x28]
cmp qword [rax + 0x20], 0
jne 0x18003db53
mov dword [r14], 0x63
jmp 0x18003dbfd
mov eax, 0x6cd1
cmp eax, eax
jne 0x18003dbab
mov rax, qword [r14 + 0x28]
mov rax, qword [rax + 0x20]
mov qword [r14 + 0x28], rax
mov ecx, dword [rax]
test ecx, ecx
je 0x18003db80
cmp ecx, 3
jne 0x18003cda0
mov dword [r14], 9
jmp 0x18003dba6
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x18003db92
mov dword [r14], 0x63
jmp 0x18003dba6
mov qword [r14 + 0x28], rax
cmp dword [rax], 2
jne 0x18003cda0
mov dword [r14], 3
mov eax, 0x6cd1
add eax, 0x36
cmp eax, 0x6cd1
jbe 0x18003db5a
jmp 0x18003dbfd
mov ecx, 0x294c
nop dword [rax]
mov eax, ecx
sub eax, 0x294c
je 0x18003dbd4
cmp eax, 0x27
je 0x18003ce30
jmp 0x18003dbdb
mov dword [rbp - 0x7d], 2
add ecx, 0x27
cmp ecx, 0x2973
jbe 0x18003dbc0
mov eax, 0x309a
cmp eax, eax
je 0x18003de87
add eax, 4
cmp eax, 0x309a
jbe 0x18003dbed
mov eax, 0x1b09
add eax, 0x4b
cmp eax, 0x1b09
jbe 0x18003daf3
jmp 0x18003dcc0
mov eax, 0x64b7
cmp eax, 0x6502
jne 0x18003dcb2
lea r8, [r14 + 4]
mov qword [rsp + 0x28], r12
lea rdx, [r14 + 0x20]
mov qword [rsp + 0x20], r13
lea rcx, [r14 + 8]
mov r9d, 0x73b9
call fcn.180043890
test eax, eax
je 0x18003dc51
cmp eax, 0xe
je 0x18003dc68
jmp 0x18003dc96
mov eax, 0x539c
cmp eax, eax
je 0x18003de91
add eax, 0x4f
cmp eax, 0x539c
jbe 0x18003dc58
mov ecx, 0x217f
nop dword [rax]
mov eax, ecx
sub eax, 0x217f
je 0x18003dc84
cmp eax, 0x19
je 0x18003ce30
jmp 0x18003dc8b
mov dword [rbp - 0x7d], 6
add ecx, 0x19
cmp ecx, 0x2198
jbe 0x18003dc70
mov eax, 0x3fe3
cmp eax, eax
je 0x18003de87
add eax, 6
cmp eax, 0x3fe3
jbe 0x18003dc9d
mov eax, 0x6502
add eax, 0x4b
cmp eax, 0x6502
jbe 0x18003dc1f
mov rax, qword [r12]
lea rcx, [0x180000000]
cmp byte [rax], 0
jne 0x18003c990
mov ebx, dword [rbp - 0x71]
mov edx, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x58]
mov edi, dword [rbp - 0x69]
movzx r10d, byte [rsp + 0x50]
mov r11, qword [rbp - 0x79]
mov qword [r12], rsi
mov r12d, 0x5465
jmp case.0x18003dd46.24748
mov r15, rsi
jmp case.0x18003dd46.24748
movzx eax, word [0x1800850d9]
mov word [rbp + 7], ax
movzx eax, byte [0x1800850db]
mov byte [rbp + 9], al
jmp case.0x18003dd46.24748
lea eax, [rbx - 0x60a2]
cmp eax, 0x5a
ja case.0x18003dd46.24748
movzx eax, byte [rcx + rax + 0x3e0b0]
mov ecx, dword [rcx + rax*4 + 0x3e084]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov word [rbp + 0xa], r12w
jmp case.0x18003dd46.24748
mov rcx, qword [r14]
lea rax, [0x18000e490]
lea r9, [rbp - 0x71]
mov qword [rbp - 0x71], rax
mov r8d, 0x2838
mov rdx, r14
call fcn.18003a280
movzx r10d, byte [rsp + 0x50]
jmp 0x18003de41
mov byte [rbp + 0xa], 0
jmp case.0x18003dd46.24748
movzx eax, r10b
test r11, r11
mov ecx, esi
cmovne ecx, eax
movzx r10d, cl
mov byte [rsp + 0x50], cl
jmp case.0x18003dd46.24748
mov byte [rbp + 0xc], 0
jmp case.0x18003dd46.24748
test r10b, r10b
je case.0x18003dd46.24748
mov rcx, r11
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movzx r10d, byte [rsp + 0x50]
jmp 0x18003de41
lea r8, [rbp + 7]
xor edx, edx
mov ecx, 0x1f0003
call qword [sym.imp.KERNEL32.dll_OpenWaitableTimerA]
movzx r10d, byte [rsp + 0x50]
mov r11, rax
mov qword [rbp - 0x79], rax
jmp 0x18003de45
mov r9, r14
xor r8d, r8d
xor edx, edx
mov ecx, 0x4055
call fcn.18000fa60
test al, al
je 0x18003ce30
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
mov ecx, 0x6899
call fcn.1800434e0
test al, al
je 0x18003ce30
movzx r10d, byte [rsp + 0x50]
jmp 0x18003de41
mov r8d, 4
lea rdx, [0x18008515a]
lea rcx, [rbp + 0xc]
call fcn.1800643c0
mov r10b, 1
mov byte [rbp + 0x10], 0
mov byte [rsp + 0x50], r10b
mov r11, qword [rbp - 0x79]
mov r8d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x54]
add ebx, 0xa
cmp ebx, edi
ja 0x18003ce30
mov r9, qword [rbp - 1]
jmp 0x18003c709
mov eax, 0xfffffffd
jmp 0x18003ce33
mov dword [r9], 3
mov eax, 6
jmp 0x18003ce33
mov eax, 7
jmp 0x18003ce33
mov eax, 4
jmp 0x18003ce33
mov eax, 3
jmp 0x18003ce33
mov ecx, 0xfa
call qword [sym.imp.KERNEL32.dll_Sleep]
nop word [rax + rax]
xor r8d, r8d
xor ecx, ecx
cmp byte [r14 + 0x1ee], cl
je 0x18003ded5
mov r9, r14
mov edx, 0x4e08
call fcn.18000e4c0
mov byte [r14 + 0x1ee], 0
jmp 0x18003de9b
xor r9d, r9d
mov edx, 0x2b67
call fcn.18000d080
test al, al
jne 0x18003df03
cmp byte [r14 + 0x1ec], al
je 0x18003de9b
mov r9, r14
xor r8d, r8d
mov edx, 0x4e08
xor ecx, ecx
call fcn.18000e4c0
jmp 0x18003de9b
xor r9d, r9d
mov r8d, 0x2ac7
mov rdx, r14
xor ecx, ecx
call fcn.180036dd0
movzx ecx, byte [r14 + 0x1ed]
test al, al
je 0x18003df46
test cl, cl
jne 0x18003de9b
mov r9, r14
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov edx, 0x1c2a
xor ecx, ecx
call fcn.18002d140
jmp 0x18003de9b
test cl, cl
je 0x18003df62
mov r9d, 0x3c45
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, r14
xor ecx, ecx
call fcn.180045620
xor r9d, r9d
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov edx, 0x7349
mov rcx, r14
call fcn.180029a00
jmp 0x18003de9b