Function at 0x4eda00
Capabilities:
Parse credit card information

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0xa8]
nop dword [rax + rax]
cmp rax, qword [rcx + 0x10]
jbe 0x4eecc6
sub rsp, 0x128
mov qword [rsp + 0x120], rbp
lea rbp, [rsp + 0x120]
movzx eax, word [rsp + 0x140]
test ax, 2
jne 0x4eebf0
lea rax, [0x0052f120]
mov qword [rsp], rax
nop
call fcn.0040e400
mov rax, qword [rsp + 8]
movzx ecx, word [rsp + 0x140]
mov word [rax], cx
mov rcx, qword [rsp + 0x138]
mov qword [rax + 0x38], rcx
cmp dword [0x00650da0], 0
jne 0x4eebda
mov rdx, qword [rsp + 0x130]
mov qword [rax + 0x30], rdx
mov qword [rsp + 0x100], rax
mov rbx, rcx
mov rsi, rdx
xor edi, edi
xor r8d, r8d
xor r9d, r9d
jmp 0x4edae0
mov r10, qword [rsp + 0x100]
mov edi, ecx
mov r8, rdx
mov r9, rsi
mov rsi, qword [rsp + 0x130]
mov rcx, rbx
mov rdx, rax
mov rax, r10
mov rbx, qword [rsp + 0x138]
nop dword [rax + rax]
test rcx, rcx
je 0x4eeaa7
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x110], rdx
mov byte [rsp + 0x77], dil
movzx r10d, byte [rdx]
cmp r10b, 0x2e
ja 0x4edf00
cmp r10b, 0x28
ja 0x4edd11
cmp r10b, 0x24
jne 0x4edb89
movzx r8d, word [rax]
test r8w, 0x10
je 0x4edb79
mov qword [rsp], rax
mov byte [rsp + 8], 0xa
call fcn.004ea9e0
mov rax, qword [rsp + 0x10]
movzx ecx, word [rax + 2]
bts ecx, 8
mov word [rax + 2], cx
mov rax, qword [rsp + 0xb0]
dec rax
mov rbx, rax
neg rax
sar rax, 0x3f
and rax, 1
mov rsi, qword [rsp + 0x110]
add rax, rsi
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp], rax
mov byte [rsp + 8], 8
call fcn.004ea9e0
jmp 0x4edb47
cmp r10b, 0x28
jne 0x4edc78
movzx r8d, word [rax]
test r8w, 0x40
je 0x4edbac
nop
cmp rcx, 2
jl 0x4edbac
cmp byte [rdx + 1], 0x3f
je 0x4edc0c
inc qword [rax + 0x28]
mov qword [rsp], rax
mov byte [rsp + 8], pe_nt_image_headers64
call fcn.004ea9e0
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rcx + 0x28]
mov qword [rax + 0x58], rdx
mov rax, qword [rsp + 0xb0]
lea rbx, [rax - 1]
mov rax, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
mov rdx, qword [rsp + 0x110]
add rdx, rbx
mov rbx, rax
mov rax, rdx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.004eef60
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
cmp qword [rsp + 0x28], 0
jne 0x4edc4c
mov rbx, rcx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rbx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
call fcn.004f3880
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov edx, dword [rsp + 0x10]
mov rbx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
cmp qword [rsp + 0x28], 0
jne 0x4edce5
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
mov dword [rsp + 8], edx
call fcn.004ea7e0
mov rbx, qword [rsp + 0x78]
mov rax, qword [rsp + 0xc8]
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
nop
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], rsi
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
cmp r10b, 0x29
je 0x4ede7b
nop dword [rax + rax]
cmp r10b, 0x2b
jbe 0x4edd95
cmp r10b, 0x2e
jne 0x4edc78
movzx r8d, word [rax]
test r8w, 8
je 0x4edd85
mov qword [rsp], rax
mov byte [rsp + 8], 6
call fcn.004ea9e0
mov r8, qword [rsp + 0xb0]
lea rbx, [r8 - 1]
mov r8, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
mov r9, qword [rsp + 0x110]
lea rax, [r9 + rbx]
mov rbx, r8
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
nop dword [rax]
jmp 0x4edab2
mov qword [rsp], rax
mov byte [rsp + 8], 5
call fcn.004ea9e0
jmp 0x4edd4a
cmp r10b, 0x2a
jne 0x4ede57
mov edi, 0xe
mov byte [rsp + 0x77], dil
mov qword [rsp], rax
mov byte [rsp + 8], dil
xorps xmm0, xmm0
movups xmmword [rsp + 0x10], xmm0
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], rcx
lea rbx, [rcx - 1]
mov rsi, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
add rbx, rdx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r8
call fcn.004eaae0
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
cmp qword [rsp + 0x60], 0
jne 0x4ede2b
mov rbx, rcx
movzx ecx, byte [rsp + 0x77]
mov rdx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x110]
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rbx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
cmp r10b, 0x2b
jne 0x4ede67
mov edi, 0xf
jmp 0x4edda4
cmp r10b, 0x3f
jne 0x4edda4
mov edi, 0x10
jmp 0x4edda4
mov qword [rsp], rax
nop
call fcn.004eff60
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x10]
cmp qword [rsp + 8], 0
jne 0x4edece
mov r8, qword [rsp + 0xb0]
lea rbx, [r8 - 1]
mov r8, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
mov r9, qword [rsp + 0x110]
lea rax, [r9 + rbx]
mov rbx, r8
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rcx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
cmp r10b, 0x5c
ja 0x4ee768
cmp r10b, 0x3f
je 0x4edd95
cmp r10b, 0x5b
je 0x4ee6fc
nop
cmp r10b, 0x5c
jne 0x4edc78
movzx r8d, word [rax]
test r8w, 0x40
je 0x4edf6a
cmp rcx, 2
jl 0x4edf6a
movzx r8d, byte [rdx + 1]
cmp r8b, 0x43
ja 0x4ee4b5
cmp r8b, 0x41
je 0x4ee46e
cmp r8b, 0x42
je 0x4ee427
nop
cmp r8b, 0x43
je 0x4ee39c
nop
mov r8, qword [rax + 0x20]
lea r9, [rax + 0x20]
mov qword [rsp + 0x118], r9
nop dword [rax + rax]
test r8, r8
je 0x4ee34c
mov r10, qword [r8 + 0x20]
cmp dword [0x00650da0], 0
jne 0x4ee2e1
mov qword [rax + 0x20], r10
mov r10d, edi
mov rdi, r8
xorps xmm0, xmm0
lea rdi, [rdi - 0x10]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046b80d
mov rbp, qword [rbp]
mov qword [rsp + 0xf0], r8
mov byte [r8], 4
movzx edi, word [rax]
mov word [r8 + 2], di
cmp rcx, 2
jl 0x4edff4
movzx edi, byte [rdx + 1]
nop dword [rax]
cmp dil, 0x70
je 0x4ee1b7
cmp dil, 0x50
je 0x4ee1b7
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
lea rbx, [r8 + 0x40]
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 2
nop dword [rax]
call fcn.004f0a60
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x38]
cmp qword [rsp + 0x30], 0
je 0x4ee0b2
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0xc0], rax
mov r8, qword [rsp + 0xf0]
mov qword [r8 + 0x30], rsi
mov qword [r8 + 0x38], rbx
cmp dword [0x00650da0], 0
jne 0x4ee0a7
mov qword [r8 + 0x28], rdx
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
mov qword [rsp + 8], r8
call fcn.004ea120
mov rbx, qword [rsp + 0x88]
mov rax, qword [rsp + 0xc0]
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
lea rdi, [r8 + 0x28]
call fcn.0046b200
jmp 0x4ee073
nop
mov rax, qword [rsp + 0x100]
mov rcx, qword [rax + 0x20]
cmp dword [0x00650da0], 0
jne 0x4ee191
mov rdx, qword [rsp + 0xf0]
mov qword [rdx + 0x20], rcx
mov qword [rax + 0x20], rdx
mov qword [rsp], rax
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 8], rcx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x10], rcx
call fcn.004f01c0
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x18]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
cmp qword [rsp + 0x30], 0
jne 0x4ee165
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x80], rcx
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
mov dword [rsp + 8], edx
nop
call fcn.004ea7e0
mov rbx, qword [rsp + 0x80]
mov rax, qword [rsp + 0xd8]
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
nop
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], rsi
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov rdx, qword [rsp + 0xf0]
lea rdi, [rdx + 0x20]
nop dword [rax]
call fcn.0046b1e0
mov rdi, qword [rsp + 0x118]
call fcn.0046b200
jmp 0x4ee0dc
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
lea rbx, [r8 + 0x40]
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 2
call fcn.004f1160
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
mov r9, qword [rsp + 0x30]
cmp qword [rsp + 0x58], 0
jne 0x4ee2b5
test r9, r9
je 0x4ee290
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0xe8], rax
mov rdx, qword [rsp + 0xf0]
mov qword [rdx + 0x30], r8
mov qword [rdx + 0x38], rdi
cmp dword [0x00650da0], 0
jne 0x4ee285
mov qword [rdx + 0x28], rsi
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
mov qword [rsp + 8], rdx
nop dword [rax]
call fcn.004ea120
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0xe8]
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
nop
jmp 0x4edab2
lea rdi, [rdx + 0x28]
call fcn.0046b240
jmp 0x4ee24b
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x110]
mov r8, qword [rsp + 0xf0]
jmp 0x4edff4
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rbx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov qword [rsp + 0xf8], r8
mov rdi, r9
mov rax, r10
call fcn.0046b0e0
lea rax, [0x005325e0]
mov qword [rsp], rax
mov qword [rsp + 8], r8
call fcn.00414c80
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x138]
mov rsi, qword [rsp + 0x130]
mov r8, qword [rsp + 0xf8]
mov r9, qword [rsp + 0x118]
movzx r10d, byte [rsp + 0x77]
jmp 0x4edfbe
lea rax, [0x005325e0]
mov qword [rsp], rax
call fcn.0040e400
mov r8, qword [rsp + 8]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x138]
mov rsi, qword [rsp + 0x130]
mov r9, qword [rsp + 0x118]
movzx r10d, byte [rsp + 0x77]
jmp 0x4edfbe
lea rax, [0x00522de0]
mov qword [rsp], rax
call fcn.0040e400
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x17
lea rcx, [0x0053ff50]
mov qword [rax], rcx
mov qword [rax + 0x18], 2
cmp dword [0x00650da0], 0
jne 0x4ee413
mov rcx, qword [rsp + 0x110]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x148], 0
lea rcx, [0x00568678]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rax
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
lea rdi, [rax + 0x10]
mov rcx, qword [rsp + 0x110]
nop
call fcn.0046b1e0
jmp 0x4ee3e0
mov qword [rsp], rax
mov byte [rsp + 8], 0xc
call fcn.004ea9e0
mov rax, qword [rsp + 0xb0]
lea rbx, [rax - 2]
mov rax, rbx
neg rbx
sar rbx, 0x3f
and rbx, 2
mov rcx, qword [rsp + 0x110]
add rcx, rbx
mov rbx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp], rax
mov byte [rsp + 8], 9
call fcn.004ea9e0
mov rax, qword [rsp + 0xb0]
lea rbx, [rax - 2]
mov rax, rbx
neg rbx
sar rbx, 0x3f
and rbx, 2
mov rcx, qword [rsp + 0x110]
add rcx, rbx
mov rbx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
cmp r8b, 0x51
je 0x4ee55e
nop
cmp r8b, 0x62
je 0x4ee517
cmp r8b, 0x7a
jne 0x4edf6a
mov qword [rsp], rax
mov byte [rsp + 8], 0xa
call fcn.004ea9e0
mov rax, qword [rsp + 0xb0]
lea rbx, [rax - 2]
mov rax, rbx
neg rbx
sar rbx, 0x3f
and rbx, 2
mov rcx, qword [rsp + 0x110]
add rcx, rbx
mov rbx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp], rax
mov byte [rsp + 8], 0xb
call fcn.004ea9e0
mov rax, qword [rsp + 0xb0]
lea rbx, [rax - 2]
mov rax, rbx
neg rbx
sar rbx, 0x3f
and rbx, 2
mov rcx, qword [rsp + 0x110]
add rcx, rbx
mov rbx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
lea rax, [0x0053b4a5]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 2
nop dword [rax]
call fcn.004e6fc0
mov rcx, qword [rsp + 0x20]
test rcx, rcx
jge 0x4ee68b
mov rax, qword [rsp + 0xb0]
add rax, 0xfffffffffffffffe
mov rcx, rax
neg rax
sar rax, 0x3f
and rax, 2
mov rdx, qword [rsp + 0x110]
add rax, rdx
xor edx, edx
xor ebx, ebx
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x90], rdx
jmp 0x4ee613
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xa0], rcx
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
mov dword [rsp + 8], edx
call fcn.004ea7e0
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xe0]
test rcx, rcx
je 0x4ee672
mov qword [rsp], rax
mov qword [rsp + 8], rcx
call fcn.004f3880
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov edx, dword [rsp + 0x10]
mov rbx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
cmp qword [rsp + 0x28], 0
je 0x4ee5ce
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], rsi
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov rbx, rdx
mov rax, qword [rsp + 0xd0]
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov rdx, qword [rsp + 0xb0]
cmp rcx, rdx
ja 0x4eecb8
nop dword [rax]
cmp rcx, 2
jb 0x4eecae
lea rbx, [rcx - 2]
mov rsi, rbx
neg rbx
sar rbx, 0x3f
and rbx, 2
mov r8, qword [rsp + 0x110]
add rbx, r8
lea rax, [rcx + 2]
cmp rax, rdx
ja 0x4eeca6
sub rdx, rcx
add rdx, 0xfffffffffffffffe
mov r9, rdx
neg rdx
sar rdx, 0x3f
and rax, rdx
add r8, rax
mov rdx, r9
mov rcx, rsi
mov rax, rbx
mov rbx, r8
jmp 0x4ee5bc
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.004f1a80
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
cmp qword [rsp + 0x28], 0
jne 0x4ee73c
mov rbx, rcx
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rbx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
cmp r10b, 0x5e
jne 0x4ee7cf
movzx r8d, word [rax]
test r8w, 0x10
je 0x4ee7bf
mov qword [rsp], rax
mov byte [rsp + 8], 9
call fcn.004ea9e0
mov r8, qword [rsp + 0xb0]
lea rbx, [r8 - 1]
mov r8, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
mov r9, qword [rsp + 0x110]
lea rax, [r9 + rbx]
mov rbx, r8
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp], rax
mov byte [rsp + 8], 7
call fcn.004ea9e0
jmp 0x4ee788
cmp r10b, 0x7b
je 0x4ee868
nop dword [rax]
cmp r10b, 0x7c
jne 0x4edc78
mov qword [rsp], rax
call fcn.004ef840
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x10]
cmp qword [rsp + 8], 0
jne 0x4ee83c
mov r8, qword [rsp + 0xb0]
lea rbx, [r8 - 1]
mov r8, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
mov r9, qword [rsp + 0x110]
lea rax, [r9 + rbx]
mov rbx, r8
movzx ecx, byte [rsp + 0x77]
xor edx, edx
xor esi, esi
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rcx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0x108], r9
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.004eece0
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
cmp byte [rsp + 0x38], 0
jne 0x4ee900
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
mov dword [rsp + 8], 0x7b
call fcn.004ea7e0
mov rax, qword [rsp + 0xb0]
lea rbx, [rax - 1]
mov rax, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
mov rcx, qword [rsp + 0x110]
add rcx, rbx
mov rbx, rax
mov rax, rcx
mov ecx, 0x11
xor edx, edx
xor esi, esi
jmp 0x4edab2
cmp rcx, 0x3e8
ja 0x4ee9f1
cmp rax, 0x3e8
jg 0x4ee9f1
test rax, rax
jl 0x4ee929
nop
cmp rcx, rax
jg 0x4ee9f1
mov rsi, qword [rsp + 0x100]
mov qword [rsp], rsi
mov byte [rsp + 8], 0x11
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdx
mov rdx, qword [rsp + 0x108]
mov qword [rsp + 0x40], rdx
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 0x48], rdx
call fcn.004eaae0
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
cmp qword [rsp + 0x60], 0
jne 0x4ee9c5
mov rbx, rcx
mov ecx, 0x11
mov rdx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x110]
nop dword [rax + rax]
jmp 0x4edab2
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rbx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov rcx, qword [rsp + 0xb0]
mov rax, rcx
sub rcx, rdx
nop
cmp rcx, rax
ja 0x4eecbd
mov qword [rsp + 0xb8], rcx
lea rax, [0x00522de0]
mov qword [rsp], rax
nop dword [rax]
call fcn.0040e400
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x14
lea rcx, [0x0053ef97]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rax + 0x18], rcx
cmp dword [0x00650da0], 0
jne 0x4eea90
mov rcx, qword [rsp + 0x110]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x148], 0
lea rcx, [0x00568678]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rax
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
lea rdi, [rax + 0x10]
mov rcx, qword [rsp + 0x110]
nop dword [rax]
call fcn.0046b1e0
jmp 0x4eea5d
mov qword [rsp], rax
call fcn.004eb180
mov rax, qword [rsp + 0x100]
mov qword [rsp], rax
nop dword [rax]
call fcn.004efc60
cmp byte [rsp + 8], 0
je 0x4eebcd
mov rax, qword [rsp + 0x100]
mov rdx, qword [rax + 0x18]
mov rbx, qword [rax + 0x10]
lea rcx, [rbx - 1]
cmp rcx, rdx
ja 0x4eeca1
mov qword [rax + 0x10], rcx
mov qword [rsp], rax
call fcn.004eb360
mov rax, qword [rsp + 0x100]
mov rcx, qword [rax + 8]
cmp qword [rax + 0x10], 1
je 0x4eeba7
lea rax, [0x00522de0]
mov qword [rsp], rax
nop dword [rax]
call fcn.0040e400
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x11
lea rcx, [0x0053e0a4]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x138]
mov qword [rax + 0x18], rcx
cmp dword [0x00650da0], 0
jne 0x4eeb90
mov rcx, qword [rsp + 0x130]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x148], 0
lea rcx, [0x00568678]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rax
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
lea rdi, [rax + 0x10]
mov rcx, qword [rsp + 0x130]
nop dword [rax]
call fcn.0046b1e0
jmp 0x4eeb5d
mov rax, qword [rcx]
mov qword [rsp + 0x148], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x150], xmm0
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov rax, qword [rsp + 0x100]
jmp 0x4eeaf1
lea rdi, [rax + 0x30]
mov rdx, qword [rsp + 0x130]
call fcn.0046b200
jmp 0x4eda9a
mov rax, qword [rsp + 0x130]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 8], rcx
call fcn.004f3740
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
cmp qword [rsp + 0x10], 0
nop
je 0x4eec4e
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rcx
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
mov rax, qword [rsp + 0x130]
mov qword [rsp], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 8], rax
movzx eax, word [rsp + 0x140]
mov word [rsp + 0x10], ax
call fcn.004ed880
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x148], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x150], xmm0
mov rbp, qword [rsp + 0x120]
add rsp, 0x128
ret
call fcn.0046b600
mov rcx, rdx
call fcn.0046b640
mov eax, 2
call fcn.0046b640
call fcn.0046b5c0
mov rdx, rax
call fcn.0046b5c0
nop
call fcn.004693a0
jmp fcn.004eda00