Function at 0x4752c0
Capabilities:
Packed with generic packer

Disassembly:
sub esp, 0x134
push ebx
xor ebx, ebx
mov dword [ecx + 0x120], ebx
mov al, byte [0x7984c4]
push ebp
push esi
cmp al, bl
push edi
mov dword [esp + 0x14], ecx
mov byte [esp + 0x13], 1
je 0x47531a
mov ebp, dword [esp + 0x148]
push ebp
push str._s.map
push 0x6f9840
call fcn.004b0670
add esp, 0xc
jmp loc.008d6590
cmp dword [0x797e34], 1
jne 0x475359
mov ebp, dword [esp + 0x148]
push ebp
push str._s.map
push 0x6f9840
call fcn.004b0670
add esp, 0xc
jmp loc.008d65b0
mov ebp, dword [esp + 0x148]
mov esi, str.test
mov eax, ebp
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x47538b
cmp cl, bl
je 0x475387
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x47538b
add eax, 2
add esi, 2
cmp cl, bl
jne 0x475367
xor eax, eax
jmp 0x475390
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x475474
or ecx, 0xffffffff
mov edi, str.test
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x6f9840
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x4e7e4c
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x6f9840
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x6dc470
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
mov al, byte [0x798544]
and ecx, 3
sub eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x475429
dec eax
je 0x475422
dec eax
jne 0x475456
mov edi, 0x4e7e48
jmp 0x47542e
mov edi, 0x4e7e44
jmp 0x47542e
mov edi, 0x4e7e40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x6dc470
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str..mis
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x6dc470
jmp 0x4754fc
or ecx, 0xffffffff
mov edi, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x6dc470
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str..mis
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x6dc470
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x6f9840
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x4e7e4c
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x6f9840
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [0x4eb000], bl
je 0x475536
push 0x6dc470
lea eax, [esp + 0x80]
push 0x4e2b4c
push eax
call fcn.004b0670
add esp, 0xc
jmp 0x47555c
mov edi, 0x6dc470
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x7c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp loc.008d8780