Function at 0x4f6180
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x6c3f77
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x100
push ebx
push ebp
xor ebp, ebp
push esi
push edi
mov esi, ecx
mov dword [esp + 0x38], ebp
mov al, byte [esp + 0x32]
mov dword [esp + 0x118], 1
mov byte [esp + 0x20], al
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov cl, byte [esp + 0x32]
mov dword [esp + 0x60], ebp
mov byte [esp + 0x5c], cl
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], ebp
mov dl, byte [esp + 0x32]
mov dword [esp + 0x40], ebp
mov byte [esp + 0x3c], dl
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
mov al, byte [esp + 0x32]
mov dword [esp + 0x70], ebp
mov byte [esp + 0x6c], al
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebp
mov cl, byte [esp + 0x32]
mov dword [esp + 0x50], ebp
mov byte [esp + 0x4c], cl
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], ebp
push 6
push 0x715414
lea ecx, [esp + 0x20]
mov byte [esp + 0x120], 6
call fcn.0061d820
push 4
lea ecx, [esp + 0x128]
mov byte [esp + 0x11c], 7
call fcn.0061daa0
mov bl, al
push 5
lea ecx, [esp + 0x128]
mov byte [esp + 0x14], bl
call fcn.0061daa0
lea edi, [esi + 8]
mov byte [esp + 0x34], al
mov ecx, edi
mov dword [esp + 0x1c], ebp
call fcn.0061dc40
cmp al, 0xa
jae 0x4f640f
push 0x71386c
lea edx, [esp + 0x80]
push 0x713868
push edx
call fcn.006a6fa5
lea edi, [esp + 0x88]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebx, ecx
lea ecx, [esp + 0x24]
push ebx
call fcn.00414230
test al, al
je 0x4f62d3
mov edi, dword [esp + 0x24]
mov ecx, ebx
mov eax, ecx
lea esi, [esp + 0x7c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebx
mov byte [ecx + ebx], 0
mov esi, dword [esp + 0x120]
mov dl, byte [esp + 0x20]
lea ecx, [esp + 0x20]
mov byte [esi], dl
mov dword [esi + 4], ebp
mov dword [esi + 8], ebp
mov dword [esi + 0xc], ebp
mov eax, dword [0x6dd1fc]
push eax
push ebp
push ecx
mov ecx, esi
call fcn.004136c0
mov dword [esp + 0x38], 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x118], 6
call fcn.0061d8c0
mov eax, dword [esp + 0x50]
cmp eax, ebp
je 0x4f633a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6331
cmp al, 0xff
je 0x4f6331
dec al
mov byte [ecx], al
jmp 0x4f633a
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x70]
mov dword [esp + 0x50], ebp
cmp eax, ebp
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], ebp
je 0x4f636b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6362
cmp al, 0xff
je 0x4f6362
dec al
mov byte [ecx], al
jmp 0x4f636b
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x40]
mov dword [esp + 0x70], ebp
cmp eax, ebp
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebp
je 0x4f639c
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6393
cmp al, 0xff
je 0x4f6393
dec al
mov byte [ecx], al
jmp 0x4f639c
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x60]
mov dword [esp + 0x40], ebp
cmp eax, ebp
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
je 0x4f63cd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f63c4
cmp al, 0xff
je 0x4f63c4
dec al
mov byte [ecx], al
jmp 0x4f63cd
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x24]
mov dword [esp + 0x60], ebp
cmp eax, ebp
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], ebp
je 0x4f63fe
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f63f5
cmp al, 0xff
je 0x4f63f5
dec al
mov byte [ecx], al
jmp 0x4f63fe
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
jmp 0x4f716a
cmp bl, 6
jae 0x4f643a
movzx ax, al
xor ebp, ebp
mov word [esp + 0x32], ax
test ax, ax
jle 0x4f643a
lea ebx, [esi + 0x11]
push ebp
mov ecx, edi
call fcn.0061daa0
mov byte [ebx], al
inc ebp
inc ebx
cmp bp, word [esp + 0x32]
jl 0x4f6427
mov eax, dword [esp + 0x10]
xor ebp, ebp
and eax, 0xff
cmp eax, 9
ja case.default.0x4f644e
jmp dword [eax*4 + 0x4f7e5c]
mov edx, dword [esp + 0x34]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0x1b
ja case.default.0x4f646b
jmp dword [eax*4 + 0x4f7e84]
xor eax, eax
mov bl, byte [esi + 0x19]
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
movsx ecx, bl
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x17]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x16]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 5
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor ecx, ecx
mov cl, byte [esi + 0x18]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e0e80]
jmp 0x4f7d6c
mov al, byte [esi + 0x18]
mov bl, 8
test bl, al
je 0x4f650a
push 0x1f
jmp 0x4f650c
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xc4]
push eax
call fcn.0061ca80
add esp, 8
mov ecx, dword [0x6dd1fc]
mov byte [esp + 0x118], bl
push ecx
push ebp
push eax
lea ecx, [esp + 0x68]
call fcn.004136c0
mov eax, dword [esp + 0xc4]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4f6581
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6578
cmp al, 0xff
je 0x4f6578
dec al
mov byte [ecx], al
jmp 0x4f6581
push ecx
call fcn.006a64d0
add esp, 4
mov al, byte [esi + 0x18]
mov dword [esp + 0xc4], ebp
test al, 0x10
mov dword [esp + 0xc8], ebp
mov dword [esp + 0xcc], ebp
je 0x4f65a1
push 0x1f
jmp 0x4f65a3
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xb4]
push eax
call fcn.0061ca80
add esp, 8
mov ecx, dword [0x6dd1fc]
mov byte [esp + 0x118], 9
push ecx
push ebp
push eax
lea ecx, [esp + 0x48]
call fcn.004136c0
mov eax, dword [esp + 0xb4]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4f6619
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6610
cmp al, 0xff
je 0x4f6610
dec al
mov byte [ecx], al
jmp 0x4f6619
push ecx
call fcn.006a64d0
add esp, 4
mov al, byte [esi + 0x18]
mov dword [esp + 0xb4], ebp
test al, 0x20
mov dword [esp + 0xb8], ebp
mov dword [esp + 0xbc], ebp
je 0x4f6639
push 0x1f
jmp 0x4f663b
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x94]
push eax
call fcn.0061ca80
add esp, 8
mov ecx, dword [0x6dd1fc]
mov byte [esp + 0x118], 0xa
push ecx
push ebp
push eax
lea ecx, [esp + 0x78]
call fcn.004136c0
mov eax, dword [esp + 0x94]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4f66b1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f66a8
cmp al, 0xff
je 0x4f66a8
dec al
mov byte [ecx], al
jmp 0x4f66b1
push ecx
call fcn.006a64d0
add esp, 4
mov al, byte [esi + 0x18]
mov dword [esp + 0x94], ebp
test al, 0x40
mov dword [esp + 0x98], ebp
mov dword [esp + 0x9c], ebp
je 0x4f66d1
push 0x1f
jmp 0x4f66d3
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xa4]
push eax
call fcn.0061ca80
add esp, 8
mov ecx, dword [0x6dd1fc]
mov byte [esp + 0x118], 0xb
push ecx
push ebp
push eax
lea ecx, [esp + 0x58]
call fcn.004136c0
mov eax, dword [esp + 0xa4]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4f6749
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6740
cmp al, 0xff
je 0x4f6740
dec al
mov byte [ecx], al
jmp 0x4f6749
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x50]
mov dword [esp + 0xa4], ebp
cmp eax, ebp
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], ebp
mov esi, 0x6dd1f8
je 0x4f676d
mov esi, eax
mov edx, dword [esp + 0x70]
cmp edx, ebp
jne 0x4f677a
mov edx, 0x6dd1f8
mov ecx, dword [esp + 0x40]
cmp ecx, ebp
jne 0x4f6787
mov ecx, 0x6dd1f8
mov eax, dword [esp + 0x60]
cmp eax, ebp
jne 0x4f6794
mov eax, 0x6dd1f8
push esi
push edx
push ecx
push eax
lea edx, [esp + 0x8c]
push str._s__s__s__s
push edx
call fcn.006a6fa5
lea edi, [esp + 0x94]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x18
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
lea ecx, [esp + 0x24]
push ebp
call fcn.00414230
test al, al
je case.default.0x4f644e
mov edi, dword [esp + 0x24]
mov ecx, ebp
lea esi, [esp + 0x7c]
jmp 0x4f7932
mov al, byte [esi + 0x18]
and eax, 0x78
cmp eax, 0x78
ja case.0x4f67fa.16
xor edx, edx
mov dl, byte [eax + 0x4f7f38]
jmp dword [edx*4 + 0x4f7ef4]
push 0xd8
jmp 0x4f686f
push 0xd9
jmp 0x4f686f
push 0xda
jmp 0x4f686f
push 0xdb
jmp 0x4f686f
push 0xdc
jmp 0x4f686f
push 0xdd
jmp 0x4f686f
push 0xde
jmp 0x4f686f
push 0xdf
jmp 0x4f686f
push pe_nt_image_headers32
jmp 0x4f686f
push 0xe1
jmp 0x4f686f
push 0xe2
jmp 0x4f686f
push 0xe3
jmp 0x4f686f
push 0xe4
jmp 0x4f686f
push 0xe5
jmp 0x4f686f
push 0xe6
jmp 0x4f686f
push 0xe7
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x104]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xc
cmp eax, ebp
jae 0x4f68b5
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4f68e9
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140f0
mov eax, dword [esp + 0x104]
mov byte [esp + 0x118], 7
jmp 0x4f6cc9
test ebp, ebp
jbe 0x4f6948
cmp ebp, ecx
jne 0x4f6948
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f68fd
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f6948
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f691a
mov eax, 0x6dd1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x118], 7
mov byte [eax - 1], cl
mov eax, dword [esp + 0x104]
jmp 0x4f6cc9
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414230
test al, al
je 0x4f6984
mov esi, dword [esi + 4]
test esi, esi
jne 0x4f6964
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0x104]
mov byte [esp + 0x118], 7
jmp 0x4f6cc9
mov al, byte [esi + 0x1b]
lea edx, [esp + 0x20]
push edx
push 0x37
and al, 4
push 0x36
push eax
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6de018]
jmp 0x4f7d6c
xor edx, edx
mov dl, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6de018]
jmp 0x4f7d6c
xor eax, eax
mov bl, byte [esi + 0x16]
mov al, byte [esi + 0x17]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
movsx eax, bl
shr ecx, 0x1f
add edx, ecx
shl eax, 5
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x20]
push ecx
push 1
and dl, 0x20
push 2
push edx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x1b]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
xor eax, eax
mov al, byte [esi + 0x17]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
xor ecx, ecx
mov cl, byte [esi + 0x17]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6dd240]
jmp 0x4f7d6c
mov al, byte [esi + 0x15]
lea edx, [esp + 0x20]
push edx
push 6
and al, 0x40
push 5
push eax
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x24]
push ebp
call fcn.00414230
test al, al
je case.default.0x4f644e
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x71c508
jmp 0x4f7b5d
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xf
ja case.default.0x4f6b10
jmp dword [eax*4 + 0x4f7fb4]
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov eax, ecx
shl eax, 5
add eax, ecx
lea ecx, [eax + eax*2]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x20]
push ecx
push 3
and dl, 8
push 4
push edx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x20]
push eax
push 1
and cl, 0x20
push 2
push ecx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
mov al, byte [esi + 0x1a]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x4f6b8d.7
xor edx, edx
mov dl, byte [eax + 0x4f8014]
jmp dword [edx*4 + 0x4f7ff4]
push 0xe8
jmp 0x4f6bc6
push 0xe9
jmp 0x4f6bc6
push 0xea
jmp 0x4f6bc6
push 0xeb
jmp 0x4f6bc6
push 0xec
jmp 0x4f6bc6
push 0xed
jmp 0x4f6bc6
push 0xee
jmp 0x4f6bc6
push ebp
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0xd4]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xd
cmp eax, ebp
jae 0x4f6c0c
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4f6c31
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140f0
jmp 0x4f6cba
test ebp, ebp
jbe 0x4f6c7e
cmp ebp, ecx
jne 0x4f6c7e
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f6c45
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f6c7e
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f6c62
mov eax, 0x6dd1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f6cba
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414230
test al, al
je 0x4f6cba
mov esi, dword [esi + 4]
test esi, esi
jne 0x4f6c9a
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0xd4]
mov byte [esp + 0x118], 7
test eax, eax
je case.default.0x4f644e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6ffc
cmp al, 0xff
je 0x4f6ffc
dec al
mov byte [ecx], al
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x19]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 5
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov bl, byte [esi + 0x19]
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
movsx eax, bl
shr ecx, 0x1f
add edx, ecx
shl eax, 6
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x15]
sub eax, 0x28
mov dword [esp + 0x1c], eax
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x18]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6e0970]
jmp 0x4f7d6c
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x20]
push ecx
push 0x37
and dl, 4
push 0x36
push edx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f6dbd
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f6ddd
mov al, byte [edi - 1]
test al, al
je 0x4f6ddd
cmp al, 0xff
je 0x4f6ddd
test ebp, ebp
jne 0x4f708a
jmp 0x4f7b07
test ebp, ebp
jne 0x4f6df1
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
jmp case.default.0x4f644e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4f707f
cmp eax, ebp
jae 0x4f7098
jmp 0x4f707f
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xb
ja case.default.0x4f6e21
jmp dword [eax*4 + 0x4f8054]
mov al, byte [esi + 0x16]
lea edx, [esp + 0x20]
push edx
push 0x37
and al, 0x80
push 0x36
push eax
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x20]
push ecx
push 0x37
and dl, 0x80
push 0x36
push edx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
movsx edx, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e0950]
jmp 0x4f7d6c
mov al, byte [esi + 0x16]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x4f6ea1.7
xor ecx, ecx
mov cl, byte [eax + 0x4f80a4]
jmp dword [ecx*4 + 0x4f8084]
push 0xe8
jmp 0x4f6eda
push 0xe9
jmp 0x4f6eda
push 0xea
jmp 0x4f6eda
push 0xeb
jmp 0x4f6eda
push 0xec
jmp 0x4f6eda
push 0xed
jmp 0x4f6eda
push 0xee
jmp 0x4f6eda
push ebp
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xf4]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xe
cmp eax, ebp
jae 0x4f6f20
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4f6f45
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140f0
jmp 0x4f6fce
test ebp, ebp
jbe 0x4f6f92
cmp ebp, ecx
jne 0x4f6f92
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f6f59
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f6f92
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f6f76
mov eax, 0x6dd1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f6fce
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414230
test al, al
je 0x4f6fce
mov esi, dword [esi + 4]
test esi, esi
jne 0x4f6fae
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0xf4]
mov byte [esp + 0x118], 7
test eax, eax
je case.default.0x4f644e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f6ffc
cmp al, 0xff
je 0x4f6ffc
dec al
mov byte [ecx], al
jmp case.default.0x4f644e
push ecx
call fcn.006a64d0
add esp, 4
jmp case.default.0x4f644e
xor edx, edx
mov dl, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e0970]
jmp 0x4f7d6c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f7045
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f7061
mov al, byte [edi - 1]
test al, al
je 0x4f7061
cmp al, 0xff
je 0x4f7061
test ebp, ebp
jne 0x4f708a
jmp 0x4f7b07
test ebp, ebp
jne 0x4f7072
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
jmp case.default.0x4f644e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4f707f
cmp eax, ebp
jae 0x4f7098
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
push ebp
lea ecx, [esp + 0x24]
call fcn.00414a60
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x71c508
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.00414210
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x7c]
push edx
push 0x713498
push eax
call fcn.006a6fa5
add esp, 0xc
lea ecx, [esp + 0x20]
call fcn.004cfb90
test eax, eax
jne 0x4f70e9
lea ecx, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x24]
call fcn.004cfae0
mov esi, dword [esp + 0x120]
lea edx, [esp + 0x20]
push edx
mov ecx, esi
call fcn.00413060
lea ecx, [esp + 0x18]
mov dword [esp + 0x38], 1
mov byte [esp + 0x118], 6
call fcn.0061d8c0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x118], 5
call fcn.00419a10
lea ecx, [esp + 0x6c]
mov byte [esp + 0x118], 4
call fcn.00419a10
lea ecx, [esp + 0x3c]
mov byte [esp + 0x118], 3
call fcn.00419a10
lea ecx, [esp + 0x5c]
mov byte [esp + 0x118], 2
call fcn.00419a10
lea ecx, [esp + 0x20]
mov byte [esp + 0x118], 1
call fcn.00419a10
lea ecx, [esp + 0x124]
mov byte [esp + 0x118], 0
call fcn.0061d8c0
mov ecx, dword [esp + 0x110]
mov eax, esi
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x10c
ret 8
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xb
ja case.default.0x4f71b1
jmp dword [eax*4 + 0x4f80e4]
mov al, byte [esi + 0x17]
lea edx, [esp + 0x20]
push edx
push 0x37
and al, 0x80
push 0x36
push eax
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x20]
push ecx
push 0x37
and dl, 0x80
push 0x36
push edx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x16]
mov dword [esp + 0x1c], eax
jmp case.default.0x4f644e
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
movsx edx, byte [esi + 0x19]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e0950]
jmp 0x4f7d6c
mov al, byte [esi + 0x17]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x4f723f.7
xor ecx, ecx
mov cl, byte [eax + 0x4f8134]
jmp dword [ecx*4 + 0x4f8114]
push 0xe8
jmp 0x4f7278
push 0xe9
jmp 0x4f7278
push 0xea
jmp 0x4f7278
push 0xeb
jmp 0x4f7278
push 0xec
jmp 0x4f7278
push 0xed
jmp 0x4f7278
push 0xee
jmp 0x4f7278
push ebp
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xe4]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xf
cmp eax, ebp
jae 0x4f72be
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4f72f2
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140f0
mov eax, dword [esp + 0xe4]
mov byte [esp + 0x118], 7
jmp 0x4f6cc9
test ebp, ebp
jbe 0x4f7351
cmp ebp, ecx
jne 0x4f7351
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f7306
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f7351
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4f7323
mov eax, 0x6dd1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x118], 7
mov byte [eax - 1], cl
mov eax, dword [esp + 0xe4]
jmp 0x4f6cc9
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414230
test al, al
je 0x4f738d
mov esi, dword [esi + 4]
test esi, esi
jne 0x4f736d
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0xe4]
mov byte [esp + 0x118], 7
jmp 0x4f6cc9
xor eax, eax
mov al, byte [esi + 0x17]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x16]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 5
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x19]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 5
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor edx, edx
mov dl, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e0970]
jmp 0x4f7d6c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f7440
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f7460
mov al, byte [edi - 1]
test al, al
je 0x4f7460
cmp al, 0xff
je 0x4f7460
test ebp, ebp
jne 0x4f791d
jmp 0x4f7b07
test ebp, ebp
jne 0x4f7474
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
jmp case.default.0x4f644e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4f7912
jmp 0x4f790e
mov edx, dword [esp + 0x34]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0xa
ja case.default.0x4f749c
jmp dword [eax*4 + 0x4f8174]
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x20]
push eax
push 0x37
and cl, 0x80
push 0x36
push ecx
mov ecx, esi
call fcn.004f8d30
jmp case.default.0x4f644e
xor edx, edx
mov dl, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e0958]
jmp 0x4f7d6c
movsx eax, byte [esi + 0x1a]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6e0950]
jmp 0x4f7d6c
xor ecx, ecx
mov cl, byte [esi + 0x1b]
jmp 0x4f7666
xor eax, eax
mov al, byte [esi + 0x18]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x17]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x17]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x16]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 5
add edx, ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 5
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x19]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 5
add edx, ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x18]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6e0970]
jmp 0x4f7d6c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f75d7
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f75ee
mov al, byte [edi - 1]
test al, al
je 0x4f75ee
cmp al, 0xff
jne 0x4f7b03
test ebp, ebp
jne 0x4f7602
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
jmp case.default.0x4f644e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4f7b3d
jmp 0x4f7b39
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 6
ja case.default.0x4f762a
jmp dword [eax*4 + 0x4f81a0]
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6de018]
jmp 0x4f7d6c
xor eax, eax
mov al, byte [esi + 0x17]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6de018]
jmp 0x4f7d6c
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov eax, ecx
shl eax, 5
add eax, ecx
lea ecx, [eax + eax*2]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor ecx, ecx
mov cl, byte [esi + 0x1b]
mov eax, ecx
shl eax, 5
add eax, ecx
lea ecx, [eax + eax*2]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor eax, eax
mov al, byte [esi + 0x18]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x17]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 6
add edx, eax
mov dword [esp + 0x1c], edx
jmp case.default.0x4f644e
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x1c], ecx
jmp case.default.0x4f644e
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f771a
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f75ee
mov al, byte [edi - 1]
test al, al
je 0x4f75ee
jmp 0x4f75e6
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xc
ja case.default.0x4f774c
jmp dword [eax*4 + 0x4f81bc]
push 7
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 8
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 9
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xa
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xb
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xc
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xd
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xe
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xf
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x10
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x11
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x12
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x13
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f78d5
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f78f1
mov al, byte [edi - 1]
test al, al
je 0x4f78f1
cmp al, 0xff
je 0x4f78f1
test ebp, ebp
jne 0x4f791d
jmp 0x4f7b07
test ebp, ebp
jne 0x4f7905
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
jmp case.default.0x4f644e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4f7912
cmp eax, ebp
jae 0x4f792b
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
push ebp
lea ecx, [esp + 0x24]
call fcn.00414a60
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x71c508
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [ecx + ebp], 0
jmp case.default.0x4f644e
mov edx, dword [esp + 0x34]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0xc
ja case.default.0x4f7967
jmp dword [eax*4 + 0x4f81f0]
push 7
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 8
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 9
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xa
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xb
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xc
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xd
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xe
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xf
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x10
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x11
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x12
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x13
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x20]
call fcn.00414a50
cmp eax, ebp
jae 0x4f7af0
call fcn.006a64db
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4f7b1c
mov al, byte [edi - 1]
test al, al
je 0x4f7b1c
cmp al, 0xff
je 0x4f7b1c
test ebp, ebp
jne 0x4f7b48
dec al
push 0
lea ecx, [esp + 0x24]
mov byte [edi - 1], al
call fcn.004138c0
jmp case.default.0x4f644e
test ebp, ebp
jne 0x4f7b30
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
jmp case.default.0x4f644e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4f7b3d
cmp eax, ebp
jae 0x4f7b56
push 1
lea ecx, [esp + 0x24]
call fcn.004138c0
push ebp
lea ecx, [esp + 0x24]
call fcn.00414a60
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x71c508
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [eax + ebp], 0
jmp case.default.0x4f644e
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xc
ja case.default.0x4f7b92
jmp dword [eax*4 + 0x4f8224]
push 7
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 8
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 9
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xa
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xb
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xc
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xd
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xe
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0xf
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x10
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x11
mov ecx, edi
call fcn.0061daa0
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x12
mov ecx, edi
call fcn.0061daa0
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
push 0x13
mov ecx, edi
call fcn.0061daa0
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4f7d6c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
lea ecx, [esp + 0x24]
push esi
call fcn.00414230
test al, al
je case.default.0x4f644e
mov eax, dword [esp + 0x24]
push esi
push 0x71c508
push eax
call fcn.004cf7f0
add esp, 0xc
push esi
jmp 0x4f70ae
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 7
ja case.default.0x4f7d49
jmp dword [eax*4 + 0x4f8258]
push 3
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6e0948]
fstp qword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
lea ecx, [esp + 0x84]
push str._.2f
push ecx
call fcn.006a6fa5
add esp, 0x10
jmp 0x4f70ce
push 5
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 6
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 7
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 8
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 9
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 0xa
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 0xc
mov ecx, edi
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4f7d66
push 0x71c508
lea ecx, [esp + 0x24]
call fcn.004cfae0
jmp case.default.0x4f644e