Function at 0x480010
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov eax, dword [0x6d7fc0]
add eax, 1
mov dword [0x6d7fc0], eax
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, dword [ebp - 4]
add ecx, 0x478
call fcn.0043a570
mov edx, dword [eax]
mov dword [ebp - 0x18], edx
jmp 0x48006c
push 0
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x18]
call fcn.0048a560
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 4]
add ecx, 0x478
call fcn.0043a5a0
push eax
lea ecx, [ebp - 0x18]
call fcn.0043a410
and eax, 0xff
test eax, eax
je 0x48089e
lea ecx, [ebp - 0x18]
call fcn.0048a920
mov edx, dword [eax + 4]
mov dword [ebp - 8], edx
cmp dword [ebp - 8], 0
je 0x480899
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x232a
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x232b
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x232c
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x232d
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x232e
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x232f
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x2330
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x2331
je 0x480133
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
cmp eax, 0x2332
jne 0x480153
call fcn.0047ff70
and eax, 0xff
test eax, eax
jne 0x480153
mov word [ebp - 0x28], 0x44c
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp - 8]
call fcn.004b5e80
mov ecx, dword [ebp - 8]
call fcn.004808b0
and eax, 0xffff
test eax, eax
jne 0x480169
jmp 0x48005e
mov ecx, dword [ebp - 8]
call fcn.004808d0
cmp eax, 1
jne 0x480310
cmp dword [ebp - 0xc], 0x64
jge 0x48019f
rdtsc
lea ebx, [0x60feb0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0xc]
mov dword [ecx*8 + 0x604098], eax
mov ecx, dword [ebp - 8]
call fcn.004c1140
mov ecx, dword [ebp - 8]
call fcn.004bc730
mov ecx, dword [ebp - 8]
call fcn.004bc7b0
mov ecx, dword [ebp - 8]
call fcn.004c1e00
cmp dword [ebp - 0xc], 0x64
jge 0x4801fc
rdtsc
lea ebx, [0x60fb90]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fb90]
sub edx, dword [0x60feb0]
mov eax, dword [0x60fb94]
sbb eax, dword [0x60feb4]
mov ecx, dword [ebp - 0xc]
mov dword [ecx*8 + 0x60409c], edx
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0x10], 0x64
jge 0x480221
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043b8], eax
rdtsc
lea ebx, [0x60feb8]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc600
cmp dword [ebp - 0x10], 0x64
jge 0x480266
rdtsc
lea ebx, [0x60fb98]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fb98]
sub edx, dword [0x60feb8]
mov eax, dword [0x60fb9c]
sbb eax, dword [0x60febc]
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043bc], edx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x14], 0x64
jge 0x48028b
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d78], eax
rdtsc
lea ebx, [0x60fec0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc9e0
mov ecx, dword [ebp - 8]
call fcn.004bcb70
mov ecx, dword [ebp - 8]
call fcn.004c1d30
call fcn.00435e20
mov edx, dword [ebp - 8]
cmp dword [edx + 0x39c], eax
jae 0x4802ce
mov ecx, dword [ebp - 8]
call fcn.004bd980
call fcn.00435e20
add eax, 0x384
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x39c], eax
cmp dword [ebp - 0x14], 0x64
jge 0x48030b
rdtsc
lea ebx, [0x60fba0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fba0]
sub edx, dword [0x60fec0]
mov eax, dword [0x60fba4]
sbb eax, dword [0x60fec4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d7c], edx
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
jmp 0x4807fa
mov ecx, dword [ebp - 8]
call fcn.004808d0
cmp eax, 2
jne 0x4804b5
mov eax, dword [0x6d7fc0]
xor edx, edx
mov ecx, 2
div ecx
test edx, edx
jne 0x4804b5
cmp dword [ebp - 0xc], 0x64
jge 0x48035c
rdtsc
lea ebx, [0x60feb0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov edx, dword [ebp - 0xc]
mov dword [edx*8 + 0x604098], eax
mov ecx, dword [ebp - 8]
call fcn.004bc730
mov ecx, dword [ebp - 8]
call fcn.004bc7b0
cmp dword [ebp - 0xc], 0x64
jge 0x4803a9
rdtsc
lea ebx, [0x60fb90]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov eax, dword [0x60fb90]
sub eax, dword [0x60feb0]
mov ecx, dword [0x60fb94]
sbb ecx, dword [0x60feb4]
mov edx, dword [ebp - 0xc]
mov dword [edx*8 + 0x60409c], eax
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x10], 0x64
jge 0x4803ce
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043b8], eax
rdtsc
lea ebx, [0x60feb8]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc600
cmp dword [ebp - 0x10], 0x64
jge 0x480413
rdtsc
lea ebx, [0x60fb98]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fb98]
sub edx, dword [0x60feb8]
mov eax, dword [0x60fb9c]
sbb eax, dword [0x60febc]
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043bc], edx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x14], 0x64
jge 0x480438
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d78], eax
rdtsc
lea ebx, [0x60fec0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc9e0
mov ecx, dword [ebp - 8]
call fcn.004bcb70
call fcn.00435e20
mov edx, dword [ebp - 8]
cmp dword [edx + 0x39c], eax
jae 0x480473
mov ecx, dword [ebp - 8]
call fcn.004bd980
call fcn.00435e20
add eax, 0x384
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x39c], eax
cmp dword [ebp - 0x14], 0x64
jge 0x4804b0
rdtsc
lea ebx, [0x60fba0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fba0]
sub edx, dword [0x60fec0]
mov eax, dword [0x60fba4]
sbb eax, dword [0x60fec4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d7c], edx
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
jmp 0x4807fa
mov ecx, dword [ebp - 8]
call fcn.004808d0
cmp eax, 3
jne 0x48065a
mov eax, dword [0x6d7fc0]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x48065a
cmp dword [ebp - 0xc], 0x64
jge 0x480501
rdtsc
lea ebx, [0x60feb0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov edx, dword [ebp - 0xc]
mov dword [edx*8 + 0x604098], eax
mov ecx, dword [ebp - 8]
call fcn.004bc730
mov ecx, dword [ebp - 8]
call fcn.004bc7b0
cmp dword [ebp - 0xc], 0x64
jge 0x48054e
rdtsc
lea ebx, [0x60fb90]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov eax, dword [0x60fb90]
sub eax, dword [0x60feb0]
mov ecx, dword [0x60fb94]
sbb ecx, dword [0x60feb4]
mov edx, dword [ebp - 0xc]
mov dword [edx*8 + 0x60409c], eax
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x10], 0x64
jge 0x480573
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043b8], eax
rdtsc
lea ebx, [0x60feb8]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc600
cmp dword [ebp - 0x10], 0x64
jge 0x4805b8
rdtsc
lea ebx, [0x60fb98]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fb98]
sub edx, dword [0x60feb8]
mov eax, dword [0x60fb9c]
sbb eax, dword [0x60febc]
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043bc], edx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x14], 0x64
jge 0x4805dd
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d78], eax
rdtsc
lea ebx, [0x60fec0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc9e0
mov ecx, dword [ebp - 8]
call fcn.004bcb70
call fcn.00435e20
mov edx, dword [ebp - 8]
cmp dword [edx + 0x39c], eax
jae 0x480618
mov ecx, dword [ebp - 8]
call fcn.004bd980
call fcn.00435e20
add eax, 0x384
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x39c], eax
cmp dword [ebp - 0x14], 0x64
jge 0x480655
rdtsc
lea ebx, [0x60fba0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fba0]
sub edx, dword [0x60fec0]
mov eax, dword [0x60fba4]
sbb eax, dword [0x60fec4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d7c], edx
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
jmp 0x4807fa
mov ecx, dword [ebp - 8]
call fcn.004808d0
cmp eax, 4
jne 0x4807fa
mov eax, dword [0x6d7fc0]
xor edx, edx
mov ecx, 4
div ecx
test edx, edx
jne 0x4807fa
cmp dword [ebp - 0xc], 0x64
jge 0x4806a6
rdtsc
lea ebx, [0x60feb0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov edx, dword [ebp - 0xc]
mov dword [edx*8 + 0x604098], eax
mov ecx, dword [ebp - 8]
call fcn.004bc730
mov ecx, dword [ebp - 8]
call fcn.004bc7b0
cmp dword [ebp - 0xc], 0x64
jge 0x4806f3
rdtsc
lea ebx, [0x60fb90]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov eax, dword [0x60fb90]
sub eax, dword [0x60feb0]
mov ecx, dword [0x60fb94]
sbb ecx, dword [0x60feb4]
mov edx, dword [ebp - 0xc]
mov dword [edx*8 + 0x60409c], eax
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x10], 0x64
jge 0x480718
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043b8], eax
rdtsc
lea ebx, [0x60feb8]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc600
cmp dword [ebp - 0x10], 0x64
jge 0x48075d
rdtsc
lea ebx, [0x60fb98]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fb98]
sub edx, dword [0x60feb8]
mov eax, dword [0x60fb9c]
sbb eax, dword [0x60febc]
mov ecx, dword [ebp - 0x10]
mov dword [ecx*8 + 0x6043bc], edx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x14], 0x64
jge 0x480782
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d78], eax
rdtsc
lea ebx, [0x60fec0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 8]
call fcn.004bc9e0
mov ecx, dword [ebp - 8]
call fcn.004bcb70
call fcn.00435e20
mov edx, dword [ebp - 8]
cmp dword [edx + 0x39c], eax
jae 0x4807bd
mov ecx, dword [ebp - 8]
call fcn.004bd980
call fcn.00435e20
add eax, 0x384
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x39c], eax
cmp dword [ebp - 0x14], 0x64
jge 0x4807fa
rdtsc
lea ebx, [0x60fba0]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov edx, dword [0x60fba0]
sub edx, dword [0x60fec0]
mov eax, dword [0x60fba4]
sbb eax, dword [0x60fec4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx*8 + 0x603d7c], edx
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
xor eax, eax
mov al, byte [0x6d2148]
and eax, 1
test eax, eax
jne 0x480829
mov cl, byte [0x6d2148]
or cl, 1
mov byte [0x6d2148], cl
mov edx, dword [0x6f73fc]
add edx, 0x36ee80
mov dword [0x6d2144], edx
mov eax, dword [0x6d2144]
cmp eax, dword [0x6f73fc]
jae 0x480899
mov ecx, dword [0x6f73fc]
add ecx, 0x36ee80
mov dword [0x6d2144], ecx
mov ecx, dword [ebp - 8]
call fcn.004808b0
and eax, 0xffff
push eax
mov ecx, dword [ebp - 8]
call fcn.0047d0d0
push eax
push str._Map__d__Count_d
push 0x9fff
mov edx, dword [ebp - 4]
add edx, 0x518
push edx
call fcn.005b6070
add esp, 0x14
mov eax, dword [ebp - 4]
mov byte [eax + 0xa517], 0
mov ecx, dword [ebp - 4]
add ecx, 0x518
push ecx
mov ecx, 0x672390
call fcn.004025e0
jmp 0x48005e
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret