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

Disassembly:
push 0xffffffffffffffff
push 0x6b4707
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 0x70529c
lea ecx, [esp + 0x20]
mov byte [esp + 0x120], 6
call fcn.0060ff10
push 4
lea ecx, [esp + 0x128]
mov byte [esp + 0x11c], 7
call fcn.00610190
mov bl, al
push 5
lea ecx, [esp + 0x128]
mov byte [esp + 0x14], bl
call fcn.00610190
lea edi, [esi + 8]
mov byte [esp + 0x34], al
mov ecx, edi
mov dword [esp + 0x1c], ebp
call fcn.00610330
cmp al, 0xa
jae 0x4e8b1f
push 0x70386c
lea edx, [esp + 0x80]
push 0x703868
push edx
call fcn.00698355
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.00414210
test al, al
je 0x4e89e3
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 [0x6ce1fc]
push eax
push ebp
push ecx
mov ecx, esi
call fcn.004136a0
mov dword [esp + 0x38], 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x118], 6
call fcn.0060ffb0
mov eax, dword [esp + 0x50]
cmp eax, ebp
je 0x4e8a4a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8a41
cmp al, 0xff
je 0x4e8a41
dec al
mov byte [ecx], al
jmp 0x4e8a4a
push ecx
call fcn.00697880
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 0x4e8a7b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8a72
cmp al, 0xff
je 0x4e8a72
dec al
mov byte [ecx], al
jmp 0x4e8a7b
push ecx
call fcn.00697880
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 0x4e8aac
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8aa3
cmp al, 0xff
je 0x4e8aa3
dec al
mov byte [ecx], al
jmp 0x4e8aac
push ecx
call fcn.00697880
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 0x4e8add
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8ad4
cmp al, 0xff
je 0x4e8ad4
dec al
mov byte [ecx], al
jmp 0x4e8add
push ecx
call fcn.00697880
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 0x4e8b0e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8b05
cmp al, 0xff
je 0x4e8b05
dec al
mov byte [ecx], al
jmp 0x4e8b0e
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
jmp 0x4e987a
cmp bl, 6
jae 0x4e8b4a
movzx ax, al
xor ebp, ebp
mov word [esp + 0x32], ax
test ax, ax
jle 0x4e8b4a
lea ebx, [esi + 0x11]
push ebp
mov ecx, edi
call fcn.00610190
mov byte [ebx], al
inc ebp
inc ebx
cmp bp, word [esp + 0x32]
jl 0x4e8b37
mov eax, dword [esp + 0x10]
xor ebp, ebp
and eax, 0xff
cmp eax, 9
ja case.default.0x4e8b5e
jmp dword [eax*4 + 0x4ea56c]
mov edx, dword [esp + 0x34]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0x1b
ja case.default.0x4e8b7b
jmp dword [eax*4 + 0x4ea594]
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.0x4e8b5e
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.0x4e8b5e
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x1c], edx
jmp case.default.0x4e8b5e
xor ecx, ecx
mov cl, byte [esi + 0x18]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6d1e50]
jmp 0x4ea47c
mov al, byte [esi + 0x18]
mov bl, 8
test bl, al
je 0x4e8c1a
push 0x1f
jmp 0x4e8c1c
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0xc4]
push eax
call fcn.0060f170
add esp, 8
mov ecx, dword [0x6ce1fc]
mov byte [esp + 0x118], bl
push ecx
push ebp
push eax
lea ecx, [esp + 0x68]
call fcn.004136a0
mov eax, dword [esp + 0xc4]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4e8c91
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8c88
cmp al, 0xff
je 0x4e8c88
dec al
mov byte [ecx], al
jmp 0x4e8c91
push ecx
call fcn.00697880
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 0x4e8cb1
push 0x1f
jmp 0x4e8cb3
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0xb4]
push eax
call fcn.0060f170
add esp, 8
mov ecx, dword [0x6ce1fc]
mov byte [esp + 0x118], 9
push ecx
push ebp
push eax
lea ecx, [esp + 0x48]
call fcn.004136a0
mov eax, dword [esp + 0xb4]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4e8d29
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8d20
cmp al, 0xff
je 0x4e8d20
dec al
mov byte [ecx], al
jmp 0x4e8d29
push ecx
call fcn.00697880
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 0x4e8d49
push 0x1f
jmp 0x4e8d4b
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0x94]
push eax
call fcn.0060f170
add esp, 8
mov ecx, dword [0x6ce1fc]
mov byte [esp + 0x118], 0xa
push ecx
push ebp
push eax
lea ecx, [esp + 0x78]
call fcn.004136a0
mov eax, dword [esp + 0x94]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4e8dc1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8db8
cmp al, 0xff
je 0x4e8db8
dec al
mov byte [ecx], al
jmp 0x4e8dc1
push ecx
call fcn.00697880
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 0x4e8de1
push 0x1f
jmp 0x4e8de3
push 0x21
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0xa4]
push eax
call fcn.0060f170
add esp, 8
mov ecx, dword [0x6ce1fc]
mov byte [esp + 0x118], 0xb
push ecx
push ebp
push eax
lea ecx, [esp + 0x58]
call fcn.004136a0
mov eax, dword [esp + 0xa4]
mov byte [esp + 0x118], 7
cmp eax, ebp
je 0x4e8e59
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e8e50
cmp al, 0xff
je 0x4e8e50
dec al
mov byte [ecx], al
jmp 0x4e8e59
push ecx
call fcn.00697880
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, 0x6ce1f8
je 0x4e8e7d
mov esi, eax
mov edx, dword [esp + 0x70]
cmp edx, ebp
jne 0x4e8e8a
mov edx, 0x6ce1f8
mov ecx, dword [esp + 0x40]
cmp ecx, ebp
jne 0x4e8e97
mov ecx, 0x6ce1f8
mov eax, dword [esp + 0x60]
cmp eax, ebp
jne 0x4e8ea4
mov eax, 0x6ce1f8
push esi
push edx
push ecx
push eax
lea edx, [esp + 0x8c]
push str._s__s__s__s
push edx
call fcn.00698355
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.00414210
test al, al
je case.default.0x4e8b5e
mov edi, dword [esp + 0x24]
mov ecx, ebp
lea esi, [esp + 0x7c]
jmp 0x4ea042
mov al, byte [esi + 0x18]
and eax, 0x78
cmp eax, 0x78
ja case.0x4e8f0a.16
xor edx, edx
mov dl, byte [eax + 0x4ea648]
jmp dword [edx*4 + 0x4ea604]
push 0xd8
jmp 0x4e8f7f
push 0xd9
jmp 0x4e8f7f
push 0xda
jmp 0x4e8f7f
push 0xdb
jmp 0x4e8f7f
push 0xdc
jmp 0x4e8f7f
push 0xdd
jmp 0x4e8f7f
push 0xde
jmp 0x4e8f7f
push 0xdf
jmp 0x4e8f7f
push pe_nt_image_headers32
jmp 0x4e8f7f
push 0xe1
jmp 0x4e8f7f
push 0xe2
jmp 0x4e8f7f
push 0xe3
jmp 0x4e8f7f
push 0xe4
jmp 0x4e8f7f
push 0xe5
jmp 0x4e8f7f
push 0xe6
jmp 0x4e8f7f
push 0xe7
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0060fe80
lea ecx, [esp + 0x104]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6ce1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xc
cmp eax, ebp
jae 0x4e8fc5
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4e8ff9
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140d0
mov eax, dword [esp + 0x104]
mov byte [esp + 0x118], 7
jmp 0x4e93d9
test ebp, ebp
jbe 0x4e9058
cmp ebp, ecx
jne 0x4e9058
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e900d
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e9058
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e902a
mov eax, 0x6ce1f8
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 0x4e93d9
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x4e9094
mov esi, dword [esi + 4]
test esi, esi
jne 0x4e9074
mov esi, 0x6ce1f8
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 0x4e93d9
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.004eb440
jmp case.default.0x4e8b5e
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6cefe8]
jmp 0x4ea47c
xor edx, edx
mov dl, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6cefe8]
jmp 0x4ea47c
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.0x4e8b5e
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.004eb440
jmp case.default.0x4e8b5e
xor eax, eax
mov al, byte [esi + 0x1b]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
xor eax, eax
mov al, byte [esi + 0x17]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
xor ecx, ecx
mov cl, byte [esi + 0x17]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6ce240]
jmp 0x4ea47c
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.004eb440
jmp case.default.0x4e8b5e
mov edi, 0x70c388
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.00414210
test al, al
je case.default.0x4e8b5e
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x70c388
jmp 0x4ea26d
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xf
ja case.default.0x4e9220
jmp dword [eax*4 + 0x4ea6c4]
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.0x4e8b5e
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.004eb440
jmp case.default.0x4e8b5e
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.004eb440
jmp case.default.0x4e8b5e
mov al, byte [esi + 0x1a]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x4e929d.7
xor edx, edx
mov dl, byte [eax + 0x4ea724]
jmp dword [edx*4 + 0x4ea704]
push 0xe8
jmp 0x4e92d6
push 0xe9
jmp 0x4e92d6
push 0xea
jmp 0x4e92d6
push 0xeb
jmp 0x4e92d6
push 0xec
jmp 0x4e92d6
push 0xed
jmp 0x4e92d6
push 0xee
jmp 0x4e92d6
push ebp
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0060fe80
lea ecx, [esp + 0xd4]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6ce1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xd
cmp eax, ebp
jae 0x4e931c
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4e9341
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x4e93ca
test ebp, ebp
jbe 0x4e938e
cmp ebp, ecx
jne 0x4e938e
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e9355
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e938e
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e9372
mov eax, 0x6ce1f8
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 0x4e93ca
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x4e93ca
mov esi, dword [esi + 4]
test esi, esi
jne 0x4e93aa
mov esi, 0x6ce1f8
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.0x4e8b5e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e970c
cmp al, 0xff
je 0x4e970c
dec al
mov byte [ecx], al
jmp case.default.0x4e8b5e
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.0x4e8b5e
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.0x4e8b5e
xor eax, eax
mov al, byte [esi + 0x15]
sub eax, 0x28
mov dword [esp + 0x1c], eax
jmp case.default.0x4e8b5e
xor eax, eax
mov al, byte [esi + 0x18]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6d1940]
jmp 0x4ea47c
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.004eb440
jmp case.default.0x4e8b5e
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4e94cd
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4e94ed
mov al, byte [edi - 1]
test al, al
je 0x4e94ed
cmp al, 0xff
je 0x4e94ed
test ebp, ebp
jne 0x4e979a
jmp 0x4ea217
test ebp, ebp
jne 0x4e9501
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
jmp case.default.0x4e8b5e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4e978f
cmp eax, ebp
jae 0x4e97a8
jmp 0x4e978f
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xb
ja case.default.0x4e9531
jmp dword [eax*4 + 0x4ea764]
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.004eb440
jmp case.default.0x4e8b5e
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.004eb440
jmp case.default.0x4e8b5e
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
movsx edx, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6d1920]
jmp 0x4ea47c
mov al, byte [esi + 0x16]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x4e95b1.7
xor ecx, ecx
mov cl, byte [eax + 0x4ea7b4]
jmp dword [ecx*4 + 0x4ea794]
push 0xe8
jmp 0x4e95ea
push 0xe9
jmp 0x4e95ea
push 0xea
jmp 0x4e95ea
push 0xeb
jmp 0x4e95ea
push 0xec
jmp 0x4e95ea
push 0xed
jmp 0x4e95ea
push 0xee
jmp 0x4e95ea
push ebp
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0xf4]
push eax
call fcn.0060f170
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6ce1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xe
cmp eax, ebp
jae 0x4e9630
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4e9655
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x4e96de
test ebp, ebp
jbe 0x4e96a2
cmp ebp, ecx
jne 0x4e96a2
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e9669
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e96a2
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e9686
mov eax, 0x6ce1f8
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 0x4e96de
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x4e96de
mov esi, dword [esi + 4]
test esi, esi
jne 0x4e96be
mov esi, 0x6ce1f8
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.0x4e8b5e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4e970c
cmp al, 0xff
je 0x4e970c
dec al
mov byte [ecx], al
jmp case.default.0x4e8b5e
push ecx
call fcn.00697880
add esp, 4
jmp case.default.0x4e8b5e
xor edx, edx
mov dl, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6d1940]
jmp 0x4ea47c
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4e9755
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4e9771
mov al, byte [edi - 1]
test al, al
je 0x4e9771
cmp al, 0xff
je 0x4e9771
test ebp, ebp
jne 0x4e979a
jmp 0x4ea217
test ebp, ebp
jne 0x4e9782
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
jmp case.default.0x4e8b5e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4e978f
cmp eax, ebp
jae 0x4e97a8
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
push ebp
lea ecx, [esp + 0x24]
call fcn.00414870
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x70c388
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.004141f0
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x7c]
push edx
push 0x703498
push eax
call fcn.00698355
add esp, 0xc
lea ecx, [esp + 0x20]
call fcn.0064dd30
test eax, eax
jne 0x4e97f9
lea ecx, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x24]
call fcn.004c2200
mov esi, dword [esp + 0x120]
lea edx, [esp + 0x20]
push edx
mov ecx, esi
call fcn.00412ff0
lea ecx, [esp + 0x18]
mov dword [esp + 0x38], 1
mov byte [esp + 0x118], 6
call fcn.0060ffb0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x118], 5
call fcn.004131d0
lea ecx, [esp + 0x6c]
mov byte [esp + 0x118], 4
call fcn.004131d0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x118], 3
call fcn.004131d0
lea ecx, [esp + 0x5c]
mov byte [esp + 0x118], 2
call fcn.004131d0
lea ecx, [esp + 0x20]
mov byte [esp + 0x118], 1
call fcn.004131d0
lea ecx, [esp + 0x124]
mov byte [esp + 0x118], 0
call fcn.0060ffb0
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.0x4e98c1
jmp dword [eax*4 + 0x4ea7f4]
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.004eb440
jmp case.default.0x4e8b5e
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.004eb440
jmp case.default.0x4e8b5e
xor eax, eax
mov al, byte [esi + 0x16]
mov dword [esp + 0x1c], eax
jmp case.default.0x4e8b5e
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
movsx edx, byte [esi + 0x19]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6d1920]
jmp 0x4ea47c
mov al, byte [esi + 0x17]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x4e994f.7
xor ecx, ecx
mov cl, byte [eax + 0x4ea844]
jmp dword [ecx*4 + 0x4ea824]
push 0xe8
jmp 0x4e9988
push 0xe9
jmp 0x4e9988
push 0xea
jmp 0x4e9988
push 0xeb
jmp 0x4e9988
push 0xec
jmp 0x4e9988
push 0xed
jmp 0x4e9988
push 0xee
jmp 0x4e9988
push ebp
push 5
lea ecx, [esp + 0x20]
call fcn.006102b0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0xe4]
push eax
call fcn.0060f170
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6ce1fc]
mov ebp, ecx
mov byte [esp + 0x118], 0xf
cmp eax, ebp
jae 0x4e99ce
mov ebp, eax
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x4e9a02
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push 0
push 0
lea ecx, [esp + 0x28]
call fcn.004140d0
mov eax, dword [esp + 0xe4]
mov byte [esp + 0x118], 7
jmp 0x4e93d9
test ebp, ebp
jbe 0x4e9a61
cmp ebp, ecx
jne 0x4e9a61
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e9a16
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e9a61
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4e9a33
mov eax, 0x6ce1f8
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 0x4e93d9
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x4e9a9d
mov esi, dword [esi + 4]
test esi, esi
jne 0x4e9a7d
mov esi, 0x6ce1f8
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 0x4e93d9
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.0x4e8b5e
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.0x4e8b5e
xor edx, edx
mov dl, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6d1940]
jmp 0x4ea47c
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4e9b50
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4e9b70
mov al, byte [edi - 1]
test al, al
je 0x4e9b70
cmp al, 0xff
je 0x4e9b70
test ebp, ebp
jne 0x4ea02d
jmp 0x4ea217
test ebp, ebp
jne 0x4e9b84
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
jmp case.default.0x4e8b5e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4ea022
jmp 0x4ea01e
mov edx, dword [esp + 0x34]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0xa
ja case.default.0x4e9bac
jmp dword [eax*4 + 0x4ea884]
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.004eb440
jmp case.default.0x4e8b5e
xor edx, edx
mov dl, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6d1928]
jmp 0x4ea47c
movsx eax, byte [esi + 0x1a]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6d1920]
jmp 0x4ea47c
xor ecx, ecx
mov cl, byte [esi + 0x1b]
jmp 0x4e9d76
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.0x4e8b5e
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.0x4e8b5e
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.0x4e8b5e
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x1c], edx
jmp case.default.0x4e8b5e
xor eax, eax
mov al, byte [esi + 0x18]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6d1940]
jmp 0x4ea47c
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4e9ce7
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4e9cfe
mov al, byte [edi - 1]
test al, al
je 0x4e9cfe
cmp al, 0xff
jne 0x4ea213
test ebp, ebp
jne 0x4e9d12
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
jmp case.default.0x4e8b5e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4ea24d
jmp 0x4ea249
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 6
ja case.default.0x4e9d3a
jmp dword [eax*4 + 0x4ea8b0]
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6cefe8]
jmp 0x4ea47c
xor eax, eax
mov al, byte [esi + 0x17]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6cefe8]
jmp 0x4ea47c
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.0x4e8b5e
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.0x4e8b5e
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.0x4e8b5e
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x1c], ecx
jmp case.default.0x4e8b5e
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4e9e2a
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4e9cfe
mov al, byte [edi - 1]
test al, al
je 0x4e9cfe
jmp 0x4e9cf6
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xc
ja case.default.0x4e9e5c
jmp dword [eax*4 + 0x4ea8cc]
push 7
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 8
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 9
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xa
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xb
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xc
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xd
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xe
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xf
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x10
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x11
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x12
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x13
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4e9fe5
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4ea001
mov al, byte [edi - 1]
test al, al
je 0x4ea001
cmp al, 0xff
je 0x4ea001
test ebp, ebp
jne 0x4ea02d
jmp 0x4ea217
test ebp, ebp
jne 0x4ea015
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
jmp case.default.0x4e8b5e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4ea022
cmp eax, ebp
jae 0x4ea03b
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
push ebp
lea ecx, [esp + 0x24]
call fcn.00414870
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x70c388
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.0x4e8b5e
mov edx, dword [esp + 0x34]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0xc
ja case.default.0x4ea077
jmp dword [eax*4 + 0x4ea900]
push 7
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 8
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 9
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xa
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xb
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xc
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xd
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xe
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xf
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x10
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x11
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x12
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x13
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
mov edi, 0x70c388
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.00414860
cmp eax, ebp
jae 0x4ea200
call fcn.0069788b
mov edi, dword [esp + 0x24]
test edi, edi
je 0x4ea22c
mov al, byte [edi - 1]
test al, al
je 0x4ea22c
cmp al, 0xff
je 0x4ea22c
test ebp, ebp
jne 0x4ea258
dec al
push 0
lea ecx, [esp + 0x24]
mov byte [edi - 1], al
call fcn.004138a0
jmp case.default.0x4e8b5e
test ebp, ebp
jne 0x4ea240
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
jmp case.default.0x4e8b5e
mov eax, dword [esp + 0x2c]
cmp eax, 0x1f
ja 0x4ea24d
cmp eax, ebp
jae 0x4ea266
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
push ebp
lea ecx, [esp + 0x24]
call fcn.00414870
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov esi, 0x70c388
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.0x4e8b5e
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xc
ja case.default.0x4ea2a2
jmp dword [eax*4 + 0x4ea934]
push 7
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 8
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 9
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xa
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xb
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xc
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xd
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xe
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0xf
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x10
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x11
mov ecx, edi
call fcn.00610190
movsx eax, al
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x12
mov ecx, edi
call fcn.00610190
movsx ecx, al
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
push 0x13
mov ecx, edi
call fcn.00610190
movsx edx, al
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fadd st(0), st(0)
jmp 0x4ea47c
mov edi, 0x70c388
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.00414210
test al, al
je case.default.0x4e8b5e
mov eax, dword [esp + 0x24]
push esi
push 0x70c388
push eax
call fcn.004c1f10
add esp, 0xc
push esi
jmp 0x4e97be
mov ecx, dword [esp + 0x34]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 7
ja case.default.0x4ea459
jmp dword [eax*4 + 0x4ea968]
push 3
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6d1918]
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.00698355
add esp, 0x10
jmp 0x4e97de
push 5
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 6
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 7
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 8
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 9
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 0xa
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 0xc
mov ecx, edi
call fcn.00610190
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x4ea476
push 0x70c388
lea ecx, [esp + 0x24]
call fcn.004c2200
jmp case.default.0x4e8b5e