Function at 0x47ec63
Capabilities:
Parse pe header

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x20
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x60], 0
mov rax, qword [rbp + 0x10]
mov eax, dword [rax + 8]
cmp eax, 3
jg 0x47ec91
mov eax, 0
jmp 0x47f9cd
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
movzx eax, byte [rax]
movzx eax, al
and eax, 0xdf
cmp eax, 0x43
je 0x47ecb2
mov eax, 0
jmp 0x47f9cd
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
add rax, 1
movzx eax, byte [rax]
movzx eax, al
and eax, 0xdf
cmp eax, 0x4f
je 0x47ecd7
mov eax, 0
jmp 0x47f9cd
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
add rax, 2
movzx eax, byte [rax]
movzx eax, al
and eax, 0xdf
cmp eax, 0x4d
je 0x47ecfc
mov eax, 0
jmp 0x47f9cd
mov dword [0x00c85618], 0xffffffff
mov dword [0x00c85614], 3
mov rax, qword [rbp + 0x10]
mov eax, dword [rax + 8]
lea edx, [rax - 1]
mov eax, dword [0x00c85614]
cmp edx, eax
jle 0x47edd5
mov rax, qword [rbp + 0x10]
mov rdx, qword [rax]
mov eax, dword [0x00c85614]
cdqe
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c8561c], eax
mov eax, dword [0x00c8561c]
cmp eax, 0x3a
je 0x47eddf
mov eax, dword [0x00c8561c]
cmp eax, 0x2f
jle 0x47ed6b
mov eax, dword [0x00c8561c]
cmp eax, 0x39
jle 0x47ed75
mov eax, 0
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47ed9f
mov eax, dword [0x00c8561c]
cmp eax, 0x30
jne 0x47ed95
mov eax, 0
jmp 0x47f9cd
mov dword [0x00c85618], 0
mov edx, dword [0x00c85618]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov edx, eax
mov eax, dword [0x00c8561c]
sub eax, 0x30
add eax, edx
mov dword [0x00c85618], eax
mov eax, dword [0x00c85614]
add eax, 1
mov dword [0x00c85614], eax
jmp 0x47ed10
mov eax, 0
jmp 0x47f9cd
nop
mov eax, dword [0x00c85610]
cmp eax, 6
jg 0x47ee02
mov eax, dword [0x00c85618]
test eax, eax
jle 0x47ee02
mov eax, dword [0x00c85618]
cmp eax, 0xff
jle 0x47ee0c
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
mov edx, eax
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x60], dl
mov rax, qword [0x00c85628]
test rax, rax
jne 0x47ee3d
mov edx, 0
mov ecx, 0
call fcn.00446b22
mov qword [0x00c85628], rax
mov rcx, qword [rbp + 0x10]
call fcn.0044772e
mov rdx, rax
mov rax, qword [0x00c85628]
mov rcx, rax
call fcn.00446cf0
mov rax, qword [0x00c85628]
mov edx, dword [rax + 8]
sub edx, 1
mov dword [rax + 8], edx
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x64], 0xffffffff
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x68], 0xff
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x69], 0xff
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6a], 0xff
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6d], 0xff
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6b], 0xff
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6c], 0xff
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x70], 0xffffffff
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x74], 0xffffffff
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x78], 0xffffffff
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x7c], 0xffffffff
mov dword [0x00c85644], 0
mov dword [0x00c85648], 0
mov dword [0x00c85640], 1
mov dword [0x00c85630], 1
mov qword [0x00c85638], 0
mov dword [0x00c85618], 0xffffffff
mov eax, dword [0x00c85614]
add eax, 1
mov dword [0x00c85614], eax
mov rax, qword [0x00c85628]
mov edx, dword [rax + 8]
mov eax, dword [0x00c85614]
cmp edx, eax
jle 0x47f824
mov rax, qword [0x00c85628]
mov rdx, qword [rax]
mov eax, dword [0x00c85614]
cdqe
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c8561c], eax
mov eax, dword [0x00c8561c]
cmp eax, 0x2c
je 0x47f15a
mov eax, dword [0x00c8561c]
cmp eax, 0x2f
jle 0x47ef8f
mov eax, dword [0x00c8561c]
cmp eax, 0x39
jle 0x47ef84
mov eax, dword [0x00c8561c]
cmp eax, 0x40
jle 0x47ef8f
mov eax, dword [0x00c8561c]
cmp eax, 0x5a
jle 0x47ef99
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85630]
cmp eax, 2
jne 0x47efb9
mov eax, dword [0x00c8561c]
cmp eax, 0x40
jle 0x47efb9
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c8561c]
cmp eax, 0x40
jg 0x47efce
mov dword [0x00c85630], 2
mov eax, dword [0x00c85630]
cmp eax, 1
je 0x47efe8
mov eax, dword [0x00c85640]
cmp eax, 4
jne 0x47f0ad
mov rax, qword [0x00c85638]
and eax, 0xff0000
test rax, rax
je 0x47f017
mov eax, dword [0x00c8561c]
shl eax, 0x18
cdqe
mov rdx, qword [0x00c85638]
or rax, rdx
mov qword [0x00c85638], rax
jmp 0x47f090
mov rax, qword [0x00c85638]
and eax, 0xff00
test rax, rax
je 0x47f046
mov eax, dword [0x00c8561c]
shl eax, 0x10
cdqe
mov rdx, qword [0x00c85638]
or rax, rdx
mov qword [0x00c85638], rax
jmp 0x47f090
mov rax, qword [0x00c85638]
movzx eax, al
test rax, rax
je 0x47f073
mov eax, dword [0x00c8561c]
shl eax, 8
cdqe
mov rdx, qword [0x00c85638]
or rax, rdx
mov qword [0x00c85638], rax
jmp 0x47f090
mov eax, dword [0x00c8561c]
cdqe
mov qword [0x00c85638], rax
mov rax, qword [0x00c85638]
mov qword [0x00c85638], rax
mov rax, qword [0x00c85638]
cmp rax, 0x1000000
jle 0x47f15a
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c8561c]
cmp eax, 0x30
jle 0x47f111
mov eax, dword [0x00c8561c]
cmp eax, 0x39
jg 0x47f111
mov eax, dword [0x00c85618]
cmp eax, 0xfffffffe
jne 0x47f0d8
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f0ed
mov dword [0x00c85618], 0
mov edx, dword [0x00c85618]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov edx, eax
mov eax, dword [0x00c8561c]
sub eax, 0x30
add eax, edx
mov dword [0x00c85618], eax
jmp 0x47f15a
mov eax, dword [0x00c85618]
cmp eax, 0xfffffffe
jne 0x47f126
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f13b
mov dword [0x00c85618], 0xfffffffe
mov eax, dword [0x00c85618]
test eax, eax
jle 0x47f15a
mov edx, dword [0x00c85618]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov dword [0x00c85618], eax
mov eax, dword [0x00c8561c]
cmp eax, 0x2c
je 0x47f180
mov rax, qword [0x00c85628]
mov eax, dword [rax + 8]
lea edx, [rax - 1]
mov eax, dword [0x00c85614]
cmp edx, eax
jne 0x47f810
mov eax, dword [0x00c85618]
cmp eax, 0xfffffffe
jne 0x47f195
mov dword [0x00c85618], 0
mov eax, dword [0x00c85640]
cmp eax, 1
jne 0x47f216
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x64]
cmp eax, 0xffffffff
je 0x47f1b6
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [0x00c85638]
test rax, rax
je 0x47f1cc
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
test eax, eax
jne 0x47f1e0
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f1f5
mov dword [0x00c85618], 0x12c
mov edx, dword [0x00c85618]
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x64], edx
mov eax, dword [0x00c85640]
add eax, 1
mov dword [0x00c85640], eax
jmp 0x47f7f1
mov eax, dword [0x00c85640]
cmp eax, 2
jne 0x47f334
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x68]
cmp al, 0xff
je 0x47f23b
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
je 0x47f250
mov eax, 0xffffffff
jmp 0x47f9cd
mov dword [0x00c85610], 0xffffffff
mov rax, qword [0x00c85638]
cmp rax, 0x4e
jne 0x47f271
mov dword [0x00c85610], 0
mov rax, qword [0x00c85638]
test rax, rax
jne 0x47f287
mov dword [0x00c85610], 1
mov rax, qword [0x00c85638]
cmp rax, 0x45
jne 0x47f29e
mov dword [0x00c85610], 1
mov rax, qword [0x00c85638]
cmp rax, 0x4f
jne 0x47f2b5
mov dword [0x00c85610], 2
mov rax, qword [0x00c85638]
cmp rax, 0x53
jne 0x47f2cc
mov dword [0x00c85610], 3
mov rax, qword [0x00c85638]
cmp rax, 0x4d
jne 0x47f2e3
mov dword [0x00c85610], 4
mov rax, qword [0x00c85638]
cmp rax, 0x4550
jne 0x47f2fc
mov dword [0x00c85610], 5
mov eax, dword [0x00c85610]
cmp eax, 0xffffffff
jne 0x47f311
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85610]
mov edx, eax
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x68], dl
mov eax, dword [0x00c85640]
add eax, 1
mov dword [0x00c85640], eax
jmp 0x47f7f1
mov eax, dword [0x00c85640]
cmp eax, 3
jne 0x47f41a
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x69]
cmp al, 0xff
je 0x47f359
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [0x00c85638]
test rax, rax
je 0x47f36f
mov eax, 0xffffffff
jmp 0x47f9cd
mov dword [0x00c85610], 0xffffffff
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f38e
mov dword [0x00c85610], 7
mov eax, dword [0x00c85618]
cmp eax, 5
jne 0x47f3a3
mov dword [0x00c85610], 5
mov eax, dword [0x00c85618]
cmp eax, 6
jne 0x47f3b8
mov dword [0x00c85610], 6
mov eax, dword [0x00c85618]
cmp eax, 7
jne 0x47f3cd
mov dword [0x00c85610], 7
mov eax, dword [0x00c85618]
cmp eax, 8
jne 0x47f3e2
mov dword [0x00c85610], 8
mov eax, dword [0x00c85610]
cmp eax, 0xffffffff
jne 0x47f3f7
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85610]
mov edx, eax
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x69], dl
mov eax, dword [0x00c85640]
add eax, 1
mov dword [0x00c85640], eax
jmp 0x47f7f1
mov eax, dword [0x00c85640]
cmp eax, 4
jne 0x47f51f
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6a]
cmp al, 0xff
je 0x47f43f
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
je 0x47f454
mov eax, 0xffffffff
jmp 0x47f9cd
mov dword [0x00c85610], 0xffffffff
mov rax, qword [0x00c85638]
test rax, rax
jne 0x47f4a0
mov dword [0x00c85610], 0xa
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x64]
cmp eax, 0x6e
jg 0x47f4a0
mov dword [0x00c85610], 0x14
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x69]
cmp al, 5
jne 0x47f4a0
mov dword [0x00c85610], 0xf
mov rax, qword [0x00c85638]
cmp rax, 0x31
jne 0x47f4b7
mov dword [0x00c85610], 0xa
mov rax, qword [0x00c85638]
cmp rax, 0x352e31
jne 0x47f4d0
mov dword [0x00c85610], 0xf
mov rax, qword [0x00c85638]
cmp rax, 0x32
jne 0x47f4e7
mov dword [0x00c85610], 0x14
mov eax, dword [0x00c85610]
cmp eax, 0xffffffff
jne 0x47f4fc
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85610]
mov edx, eax
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6a], dl
mov eax, dword [0x00c85640]
add eax, 1
mov dword [0x00c85640], eax
jmp 0x47f7f1
mov rax, qword [0x00c85638]
test rax, rax
jne 0x47f535
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [0x00c85638]
cmp rax, 0x5352
jne 0x47f567
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6d]
cmp al, 0xff
je 0x47f55a
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6d], 1
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x4e4942
jne 0x47f599
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6b]
cmp al, 0xff
je 0x47f58c
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6b], 0
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x435341
jne 0x47f5cb
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6b]
cmp al, 0xff
je 0x47f5be
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6b], 1
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x4254
jne 0x47f5fd
mov eax, dword [0x00c85648]
test eax, eax
je 0x47f5ee
mov eax, 0xffffffff
jmp 0x47f9cd
mov dword [0x00c85648], 1
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x4252
jne 0x47f62f
mov eax, dword [0x00c85644]
test eax, eax
je 0x47f620
mov eax, 0xffffffff
jmp 0x47f9cd
mov dword [0x00c85644], 1
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x464c
jne 0x47f661
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6c]
cmp al, 0xff
je 0x47f654
mov eax, 0xffffffff
jmp 0x47f9cd
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6c], 1
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x4443
jne 0x47f6c4
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x70]
cmp eax, 0xffffffff
je 0x47f686
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f69b
mov dword [0x00c85618], 0
mov eax, dword [0x00c85618]
cmp eax, 0xffff
jle 0x47f6b2
mov eax, 0xffffffff
jmp 0x47f9cd
mov edx, dword [0x00c85618]
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x70], edx
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x5343
jne 0x47f727
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x74]
cmp eax, 0xffffffff
je 0x47f6e9
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f6fe
mov dword [0x00c85618], 0x3e8
mov eax, dword [0x00c85618]
cmp eax, 0xffff
jle 0x47f715
mov eax, 0xffffffff
jmp 0x47f9cd
mov edx, dword [0x00c85618]
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x74], edx
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x5344
jne 0x47f787
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x78]
cmp eax, 0xffffffff
je 0x47f74c
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f761
mov dword [0x00c85618], 0x3e8
mov eax, dword [0x00c85618]
cmp eax, 0xffff
jle 0x47f778
mov eax, 0xffffffff
jmp 0x47f9cd
mov edx, dword [0x00c85618]
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x78], edx
jmp 0x47f7f1
mov rax, qword [0x00c85638]
cmp rax, 0x504f
jne 0x47f7e7
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x7c]
cmp eax, 0xffffffff
je 0x47f7ac
mov eax, 0xffffffff
jmp 0x47f9cd
mov eax, dword [0x00c85618]
cmp eax, 0xffffffff
jne 0x47f7c1
mov dword [0x00c85618], 0x2710
mov eax, dword [0x00c85618]
cmp eax, 0xffff
jle 0x47f7d8
mov eax, 0xffffffff
jmp 0x47f9cd
mov edx, dword [0x00c85618]
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x7c], edx
jmp 0x47f7f1
mov eax, 0xffffffff
jmp 0x47f9cd
mov dword [0x00c85630], 1
mov qword [0x00c85638], 0
mov dword [0x00c85618], 0xffffffff
mov eax, dword [0x00c85614]
add eax, 1
mov dword [0x00c85614], eax
jmp 0x47ef1b
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x64]
cmp eax, 0xffffffff
jne 0x47f83b
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x64], 0x12c
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x68]
cmp al, 0xff
jne 0x47f84f
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x68], 1
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x69]
cmp al, 0xff
jne 0x47f863
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x69], 7
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6a]
cmp al, 0xff
jne 0x47f8b4
mov dword [0x00c85610], 0xa
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x64]
cmp eax, 0x6e
jg 0x47f8a5
mov dword [0x00c85610], 0x14
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x69]
cmp al, 5
jne 0x47f8a5
mov dword [0x00c85610], 0xf
mov eax, dword [0x00c85610]
mov edx, eax
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6a], dl
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6b]
cmp al, 0xff
jne 0x47f8c8
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6b], 0
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6c]
cmp al, 0xff
jne 0x47f8dc
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6c], 0
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6c]
cmp al, 1
jne 0x47f8fc
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6b]
test al, al
jne 0x47f8fc
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6c], 0
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 0x6d]
cmp al, 0xff
jne 0x47f910
mov rax, qword [rbp + 0x18]
mov byte [rax + 0x6d], 0
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x70]
cmp eax, 0xffffffff
jne 0x47f927
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x70], 0
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x74]
cmp eax, 0xffffffff
jne 0x47f93e
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x74], 0x3e8
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x78]
cmp eax, 0xffffffff
jne 0x47f955
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x78], 0x3e8
mov rax, qword [rbp + 0x18]
mov eax, dword [rax + 0x7c]
cmp eax, 0xffffffff
jne 0x47f9cd
mov rax, qword [rbp + 0x18]
mov edx, dword [rax + 0x70]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov dword [0x00c85610], eax
mov rax, qword [rbp + 0x18]
mov edx, dword [rax + 0x78]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov dword [0x00c85620], eax
mov edx, dword [0x00c85620]
mov eax, dword [0x00c85610]
cmp edx, eax
jle 0x47f9a9
mov eax, dword [0x00c85620]
mov dword [0x00c85610], eax
mov eax, dword [0x00c85610]
cmp eax, 0xffff
jle 0x47f9c0
mov dword [0x00c85610], 0xffff
mov edx, dword [0x00c85610]
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x7c], edx
add rsp, 0x20
pop rbp
ret