Function at 0x40f110
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1b8
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebx + 4]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 8], 0
xor esi, esi
mov edx, edi
mov ecx, dword [edx]
movzx eax, word [ecx + 8]
cmp ax, 0x4e
je 0x40f380
cmp ax, 0x4f
je 0x40f377
cmp ax, 0x47
je 0x40f380
cmp ax, 0x48
je 0x40f377
movzx ecx, word [ecx + 8]
cmp cx, 0x41
je 0x40f195
cmp cx, 0x52
je 0x40f195
cmp cx, 0x53
je 0x40f195
cmp cx, 0x54
je 0x40f195
cmp cx, 0x55
je 0x40f195
cmp cx, 0x56
je 0x40f195
cmp ax, 0x7f
je 0x4786fe
add edx, 4
jmp 0x40f130
test esi, esi
jne 0x40f186
mov eax, dword [edi]
mov edx, 1
mov ecx, dword [eax]
mov dword [ebp - 8], edx
mov eax, dword [ecx + 8]
mov edi, dword [ecx]
mov ebx, dword [ecx + 4]
mov dword [ebp - 0xa8], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0xa0], eax
inc dword [eax]
mov dword [ebp - 0xa4], eax
xor eax, eax
mov dword [ebp - 0x40], edi
mov dword [ebp - 0xb0], edi
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0xac], ebx
mov byte [ebp - 0x15], 0
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], eax
cmp byte [0x4c20fc], al
jne 0x40f3e0
cmp dword [0x4c20f0], eax
je 0x40f595
cmp byte [0x4c20f9], al
jne 0x478753
mov esi, dword [0x4c20f4]
cmp dword [esi], 0
je 0x40f595
mov eax, dword [0x4c21f0]
mov byte [ebp - 9], 0
test al, 1
je 0x478760
mov dword [0x4c2210], 0
mov dword [0x4c220c], 0
mov dword [ebp - 0x14], 0x4c21f4
mov dword [ebp - 0x78], 0x4c21f4
jmp 0x40f250
mov eax, dword [esi]
mov dword [ebp - 0x68], eax
mov ecx, dword [eax + 4]
test ebx, ebx
je 0x478784
test ecx, ecx
je 0x40f2ac
cmp ebx, ecx
jb 0x40fa9d
mov ecx, dword [eax]
mov edx, dword [ebp - 0x40]
mov edi, ebx
test ebx, ebx
je 0x40f288
mov ax, word [edx]
cmp ax, word [ecx]
jne 0x40f28c
add edx, 2
add ecx, 2
dec edi
jne 0x40f277
xor eax, eax
jmp 0x40f298
movzx eax, word [edx]
cmp ax, word [ecx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
test eax, eax
js 0x40f328
jle 0x40f389
mov eax, dword [ebp - 0x68]
mov edi, dword [ebp - 0x40]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x40f697
mov edx, dword [ecx + 4]
cmp edx, ebx
ja 0x40fa02
mov ebx, dword [ecx]
mov dword [ebp - 0x1c], edx
test edx, edx
je 0x40f2e3
jmp 0x40f2d0
mov ax, word [ebx]
cmp ax, word [edi]
jne 0x40f2ec
add ebx, 2
add edi, 2
dec dword [ebp - 0x1c]
jne 0x40f2d0
mov ebx, dword [ebp - 0x48]
cmp edx, ebx
jb 0x40f2f1
jmp 0x40f30b
jae 0x40f30b
mov ebx, dword [ebp - 0x48]
mov eax, dword [ecx + 0x18]
mov edx, dword [ebp - 0x68]
mov dword [edx + 0x1c], eax
mov eax, dword [esi]
mov dword [ecx + 0x18], eax
mov dword [esi], ecx
cmp dword [ecx + 0x1c], 0
je 0x40f697
mov eax, dword [esi]
mov ecx, dword [ebp - 0x78]
mov ebx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x40]
mov dword [ecx + 0x1c], eax
mov edx, dword [esi]
mov dword [ebp - 0x78], edx
mov eax, dword [edx + 0x1c]
mov dword [esi], eax
jmp 0x40f250
mov eax, dword [ebp - 0x68]
mov edi, dword [ebp - 0x40]
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x40f697
mov eax, dword [ecx + 4]
cmp dword [ebp - 0x48], eax
ja 0x40fa09
mov edx, dword [ecx]
mov dword [ebp - 0x1c], ebx
test ebx, ebx
je 0x40f36a
mov edi, edi
mov ax, word [edi]
cmp ax, word [edx]
jne 0x40f55c
add edi, 2
add edx, 2
dec dword [ebp - 0x1c]
jne 0x40f350
mov eax, dword [ecx + 4]
cmp ebx, eax
jb 0x40f55e
jmp 0x40f578
dec esi
add edx, 4
jmp 0x40f130
inc esi
add edx, 4
jmp 0x40f130
mov dl, 1
mov eax, dword [esi]
mov ecx, dword [ebp - 0x78]
mov eax, dword [eax + 0x18]
mov dword [ecx + 0x1c], eax
mov eax, dword [esi]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + 0x1c]
mov dword [ecx + 0x18], eax
mov ecx, dword [esi]
mov eax, dword [0x4c2210]
mov dword [ecx + 0x18], eax
mov ecx, dword [esi]
mov eax, dword [0x4c220c]
mov dword [ecx + 0x1c], eax
test dl, dl
je 0x40f595
mov esi, dword [esi]
test esi, esi
je 0x40f595
mov eax, dword [esi + 0x10]
mov esi, dword [esi + 0x14]
and eax, 0xff00
mov dword [ebp - 0x54], eax
test esi, esi
je 0x40f595
mov edx, dword [ebp - 8]
mov dword [ebp - 0x48], esi
test esi, esi
je 0x40f463
test eax, 0x100
jne 0x4787c8
mov eax, dword [esi + 0xc]
mov edi, dword [ebp + 8]
cmp eax, 8
je 0x40f418
cmp eax, 0xc
je 0x40f418
cmp eax, 0xf
je 0x40f418
mov ecx, dword [edi + 4]
mov eax, dword [ecx + 4]
cmp word [eax + 8], 0x47
je 0x4787e7
mov ebx, dword [ebp - 0x10]
jmp 0x40f420
mov ecx, dword [edi + 4]
mov eax, dword [ecx + edx*4]
cmp word [eax + 8], 0x4e
je 0x40f6a0
mov eax, dword [edi + 4]
mov eax, dword [eax + edx*4]
movzx edi, word [eax + 8]
cmp di, 0x35
je 0x478b57
mov eax, dword [esi + 0xc]
cmp eax, 8
je 0x478b6e
cmp eax, 0xc
je 0x478b6e
cmp eax, 0xf
je 0x478b6e
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 4]
mov eax, dword [eax + edx*4]
movzx ecx, word [eax + 8]
movsx edi, word [eax + 8]
mov dword [ebp - 0x78], edi
cmp cx, 0x41
jne 0x40faed
mov ecx, dword [ebp - 0x10]
push 0xffffffffffffffff
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 8]
push eax
inc edx
push ebx
mov dword [ebp - 8], edx
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 1
call fcn.0040fe30
test eax, eax
js case.default.0x40fb08
cmp byte [ebp - 0x15], 0
jne 0x40f820
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 8]
mov eax, dword [ecx + eax*4]
cmp word [eax + 8], 0x7f
jne 0x478e5f
test esi, esi
je 0x40fcae
cmp edi, 0x41
jne 0x40fafc
lea eax, [ebp - 0x64]
cmp esi, eax
je case.default.0x40fb08
cmp dword [esi + 0xc], 4
je 0x40fb57
mov edi, dword [esi + 8]
test edi, edi
jne 0x40fbb9
mov eax, dword [esi + 0xc]
cmp eax, 5
jge 0x40fbf5
lea eax, [ebp - 0x64]
push eax
mov ecx, esi
mov dword [esi + 0xc], 1
mov dword [esi], 0
call fcn.00411720
mov esi, dword [ebp - 0x5c]
test esi, esi
jne 0x40fac7
mov eax, dword [ebp - 0x58]
cmp eax, 5
jge 0x40fbd5
mov dword [ebp - 0x58], 1
mov dword [ebp - 0x64], 0
mov esi, dword [ebp - 0xa0]
dec dword [esi]
je 0x478ff0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
jae 0x40f578
mov eax, dword [ecx + 0x1c]
mov edx, dword [ebp - 0x68]
mov dword [edx + 0x18], eax
mov eax, dword [esi]
mov dword [ecx + 0x1c], eax
mov dword [esi], ecx
cmp dword [ecx + 0x18], 0
je 0x40f694
mov eax, dword [esi]
mov ecx, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x40]
mov dword [ecx + 0x18], eax
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
mov eax, dword [eax + 0x18]
mov dword [esi], eax
jmp 0x40f250
mov edi, dword [0x4c20e0]
test edi, edi
je 0x40fca4
mov eax, dword [0x4c21f0]
mov byte [ebp - 9], 0
test al, 1
je 0x478791
mov dword [0x4c2210], 0
mov dword [0x4c220c], 0
mov dword [ebp - 0x78], 0x4c21f4
mov dword [ebp - 0x14], 0x4c21f4
jmp 0x40f5e0
mov ecx, dword [edi + 4]
test ebx, ebx
je 0x4787bb
test ecx, ecx
je 0x40fa10
cmp ebx, ecx
jb 0x40fb1f
mov ecx, dword [edi]
mov edx, dword [ebp - 0x40]
mov esi, ebx
test ebx, ebx
je 0x40f617
mov ax, word [edx]
cmp ax, word [ecx]
jne 0x40f686
add edx, 2
add ecx, 2
dec esi
jne 0x40f606
xor eax, eax
test eax, eax
js 0x40f97a
jg 0x40fa10
mov byte [ebp - 9], 1
cmp byte [ebp - 9], 0
mov eax, dword [edi + 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x1c], eax
mov eax, dword [0x4c20e0]
mov ecx, dword [ebp - 0x78]
mov eax, dword [eax + 0x1c]
mov dword [ecx + 0x18], eax
mov ecx, dword [0x4c20e0]
mov eax, dword [0x4c2210]
mov dword [ecx + 0x18], eax
mov ecx, dword [0x4c20e0]
mov eax, dword [0x4c220c]
mov dword [ecx + 0x1c], eax
je 0x40fca4
mov esi, dword [0x4c20e0]
test esi, esi
je 0x40fca4
mov eax, dword [esi + 0x10]
mov esi, dword [esi + 0x14]
and eax, 0xff00
jmp 0x40f3dd
movzx eax, word [edx]
cmp ax, word [ecx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x40f619
mov ebx, dword [ebp - 0x48]
mov dl, byte [ebp - 9]
jmp 0x40f38b
cmp dword [esi + 0xc], 5
jne 0x478b1b
mov eax, edx
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x50], eax
mov eax, dword [ecx + edx*4 - 4]
xor ebx, ebx
movsx eax, word [eax + 0xa]
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + edx*4]
mov dword [ebp - 0x70], esi
cmp word [eax + 8], 0x4e
mov dword [ebp - 0x14], ebx
jne 0x40f770
mov eax, dword [ecx + edx*4 + 4]
mov ecx, dword [ebp - 0x10]
movsx eax, word [eax + 0xa]
inc edx
mov dword [ebp - 0x54], eax
push 0xffffffffffffffff
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 8]
push eax
push edi
mov dword [ebp - 8], edx
call fcn.0040fe30
test eax, eax
js 0x478bc2
mov edi, dword [ebp - 0x30]
cmp edi, 1
jne 0x40fc14
mov ebx, dword [ebp - 0x3c]
mov eax, ebx
test eax, eax
js 0x40fcf7
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 8]
mov eax, dword [ecx + 4]
mov eax, dword [eax + edx*4]
cmp word [eax + 8], 0x4f
jne 0x478ba5
inc edx
mov dword [ebp - 8], edx
cmp edi, 1
jne 0x40fc37
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp + 8]
mov dword [ebp + eax*4 - 0x1b4], ebx
mov ecx, dword [edi + 4]
mov ebx, eax
mov eax, dword [ecx + edx*4]
inc ebx
cmp word [eax + 8], 0x4e
mov dword [ebp - 0x14], ebx
je 0x40f6e5
cmp dword [esi + 0xc], 5
jne 0x478a45
mov eax, dword [esi]
xor ecx, ecx
mov dword [eax + 0x210], 0
test ebx, ebx
jle 0x40f7be
lea esp, [esp]
cmp dword [esi + 0xc], 5
jne 0x40f7b9
mov edx, dword [esi]
mov edi, dword [edx + 0x210]
cmp edi, 0x40
jge 0x40f7b9
mov eax, dword [ebp + ecx*4 - 0x1b4]
mov dword [edx + edi*4 + 0x10c], eax
mov eax, dword [esi]
inc dword [eax + 0x210]
inc ecx
cmp ecx, ebx
jl 0x40f790
push 0
push 1
push esi
call fcn.00411b90
mov esi, eax
add esp, 0xc
mov dword [ebp - 0x48], esi
test esi, esi
je 0x478bb5
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x478a51
mov eax, dword [ebp - 0x30]
cmp eax, 5
jge 0x478a63
mov edi, dword [ebp + 8]
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x3c], 0
mov byte [ebp - 0x15], 1
mov ecx, dword [edi + 4]
mov edx, dword [ebp - 8]
mov eax, dword [ecx + edx*4]
cmp word [eax + 8], 0x4e
jne 0x40f431
jmp 0x40f6a0
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0x50]
mov ecx, dword [esi + 4]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 1
mov eax, dword [ecx + edx*4 - 4]
xor ebx, ebx
movsx eax, word [eax + 0xa]
mov dword [ebp - 0x68], eax
mov eax, dword [ecx + edx*4]
mov dword [ebp - 0x14], ebx
cmp word [eax + 8], 0x4e
jne 0x40f8eb
lea esp, [esp]
mov eax, dword [ecx + edx*4 + 4]
mov ecx, dword [ebp - 0x10]
movsx eax, word [eax + 0xa]
inc edx
mov dword [ebp - 0x1c], eax
push 0xffffffffffffffff
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x54]
push eax
push esi
mov dword [ebp - 0x54], edx
call fcn.0040fe30
test eax, eax
js 0x478d7c
mov esi, dword [ebp - 0x20]
cmp esi, 1
jne 0x40fc5c
mov ebx, dword [ebp - 0x2c]
mov eax, ebx
test eax, eax
js 0x40fd16
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x54]
mov eax, dword [ecx + 4]
mov eax, dword [eax + edx*4]
cmp word [eax + 8], 0x4f
jne 0x478d5f
inc edx
mov dword [ebp - 0x50], edx
cmp esi, 1
jne 0x40fc7f
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp + 8]
mov dword [ebp + eax*4 - 0x1b4], ebx
mov ecx, dword [esi + 4]
mov ebx, eax
mov eax, dword [ecx + edx*4]
inc ebx
cmp word [eax + 8], 0x4e
mov dword [ebp - 0x14], ebx
je 0x40f860
mov esi, dword [ebp - 0x70]
cmp dword [esi + 0xc], 5
jne 0x478d89
mov eax, dword [esi]
xor ecx, ecx
mov dword [eax + 0x210], 0
test ebx, ebx
jle 0x40f944
mov edi, dword [ebp - 0x70]
lea ecx, [ecx]
cmp dword [edi + 0xc], 5
jne 0x40f939
mov edx, dword [edi]
mov esi, dword [edx + 0x210]
cmp esi, 0x40
jge 0x40f939
mov eax, dword [ebp + ecx*4 - 0x1b4]
mov dword [edx + esi*4 + 0x10c], eax
mov eax, dword [edi]
inc dword [eax + 0x210]
inc ecx
cmp ecx, ebx
jl 0x40f910
mov edi, dword [ebp - 0x78]
mov esi, dword [ebp - 0x70]
push 0
push 0
push esi
call fcn.00411b90
mov esi, eax
add esp, 0xc
test esi, esi
je 0x478d6f
mov ecx, dword [ebp - 0x24]
test ecx, ecx
jne 0x478d95
mov eax, dword [ebp - 0x20]
cmp eax, 5
jge 0x478da7
mov ebx, dword [ebp + 8]
jmp 0x40f4bb
mov esi, dword [edi + 0x18]
lea eax, [edi + 0x18]
mov dword [ebp - 0x68], eax
test esi, esi
je 0x40f62b
mov eax, dword [esi + 4]
cmp dword [ebp - 0x48], eax
ja 0x40fb84
mov ecx, dword [esi]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x1c], ebx
test ebx, ebx
je 0x40f9b9
mov ax, word [edx]
cmp ax, word [ecx]
jne 0x40f9bf
add edx, 2
add ecx, 2
dec dword [ebp - 0x1c]
jne 0x40f9a3
mov eax, dword [esi + 4]
cmp ebx, eax
jb 0x40f9c1
jmp 0x40f9e3
jae 0x40f9e3
mov ecx, dword [ebp - 0x68]
mov edi, esi
mov eax, dword [edi + 0x1c]
mov dword [ecx], eax
mov eax, dword [0x4c20e0]
mov dword [edi + 0x1c], eax
mov dword [0x4c20e0], edi
cmp dword [edi + 0x18], 0
je 0x40f62b
mov ecx, dword [ebp - 0x78]
mov ebx, dword [ebp - 0x48]
mov dword [ecx + 0x18], edi
mov eax, dword [0x4c20e0]
mov dword [ebp - 0x78], eax
mov edi, dword [eax + 0x18]
mov dword [0x4c20e0], edi
jmp 0x40f5e0
mov edx, ebx
jmp 0x40f2c2
mov ebx, eax
jmp 0x40f345
mov ebx, dword [edi + 0x1c]
lea eax, [edi + 0x1c]
mov dword [ebp - 0x68], eax
test ebx, ebx
je 0x40f62b
mov eax, dword [ebx + 4]
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], eax
cmp eax, ecx
ja 0x40fb7a
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebx]
mov esi, eax
test eax, eax
je 0x40fa54
lea ecx, [ecx]
mov ax, word [edx]
cmp ax, word [ecx]
jne 0x40fa7c
add edx, 2
add ecx, 2
dec esi
jne 0x40fa40
out dx, eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x48]
jae 0x40fa7e
mov ecx, dword [ebp - 0x68]
mov edi, ebx
mov eax, dword [edi + 0x18]
mov dword [ecx], eax
add dword [ecx + 0x4c20e0], esp
mov dword [edi + 0x18], eax
mov dword [0x4c20e0], edi
cmp dword [edi + 0x1c], 0
jne 0x40fa7e
jmp 0x40f62b
jb 0x40fa59
mov ecx, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x48]
mov dword [ecx + 0x1c], edi
mov eax, dword [0x4c20e0]
mov dword [ebp - 0x14], eax
mov edi, dword [eax + 0x1c]
mov dword [0x4c20e0], edi
jmp 0x40f5e0
mov edx, dword [eax]
test ecx, ecx
je 0x40f288
jmp 0x40fab0
mov ax, word [edi]
cmp ax, word [edx]
je 0x40fba5
movzx eax, ax
cmp ax, word [edx]
jmp 0x40f292
mov eax, dword [esi + 0xc]
dec dword [eax]
mov eax, dword [esi + 0xc]
cmp dword [eax], 0
je 0x40fb8b
push esi
call fcn.0041f55e
add esp, 4
mov dword [ebp - 0x5c], 0
jmp 0x40f52b
cmp cx, 0x52
je 0x40f481
jmp 0x478c2b
add edi, 0xffffffae
cmp edi, 4
ja case.default.0x40fb08
jmp dword [edi*4 + 0x40fd20]
lea eax, [ebp - 0x64]
push eax
mov ecx, esi
call fcn.00414525
jmp case.default.0x40fb08
mov edx, dword [edi]
mov esi, dword [ebp - 0x40]
test ecx, ecx
je 0x40f617
lea esp, [esp]
mov ax, word [esi]
cmp ax, word [edx]
je 0x40fb49
movzx eax, ax
cmp ax, word [edx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x40f619
add esi, 2
add edx, 2
dec ecx
jne 0x40fb30
jmp 0x40f617
cmp dword [ebp - 0x58], 4
jne 0x40f4f1
mov ecx, dword [esi + 8]
mov esi, dword [ebp - 0x5c]
cmp ecx, esi
je case.default.0x40fb08
push esi
call fcn.0040dd47
jmp case.default.0x40fb08
mov eax, ecx
mov dword [ebp - 0x1c], ecx
jmp 0x40fa32
mov ebx, eax
jmp 0x40f997
push dword [esi]
call fcn.0041f55e
add esp, 4
push dword [esi + 0xc]
call fcn.0041f55e
add esp, 4
jmp 0x40fad8
add edi, 2
add edx, 2
dec ecx
jne 0x40fab0
xor eax, eax
jmp 0x40f298
mov ecx, edi
call fcn.0040cb37
push edi
call fcn.0041f55e
add esp, 4
mov dword [esi + 8], 0
jmp 0x40f4fc
add eax, 0xfffffffb
cmp eax, 0xa
ja case.0x40fbe1.6
jmp dword [eax*4 + 0x40fd34]
lea ecx, [ebp - 0x64]
call fcn.0041dcbe
jmp case.0x40fbe1.6
sub eax, 5
cmp eax, 0xa
ja case.0x40fc01.6
jmp dword [eax*4 + 0x40fd60]
mov ecx, esi
call fcn.0041dcbe
jmp case.0x40fc01.6
lea eax, [edi - 2]
cmp eax, 9
ja case.0x40fc20.5
jmp dword [eax*4 + 0x40fd8c]
fld qword [ebp - 0x3c]
call fcn.004718d0
mov ebx, dword [ebp - 0x3c]
jmp 0x40f720
add edi, 0xfffffffe
cmp edi, 9
ja case.0x40fc43.5
jmp dword [edi*4 + 0x40fdb4]
fld qword [ebp - 0x3c]
call fcn.004718d0
mov edx, dword [ebp - 8]
mov ebx, eax
jmp case.0x40fc43.2
lea eax, [esi - 2]
cmp eax, 9
ja case.0x40fc68.5
jmp dword [eax*4 + 0x40fddc]
fld qword [ebp - 0x2c]
call fcn.004718d0
mov ebx, dword [ebp - 0x2c]
jmp 0x40f89b
add esi, 0xfffffffe
cmp esi, 9
ja case.0x40fc8b.5
jmp dword [esi*4 + 0x40fe04]
fld qword [ebp - 0x2c]
call fcn.004718d0
mov edx, dword [ebp - 0x50]
mov ebx, eax
jmp case.0x40fc8b.2
mov eax, dword [ebp - 0x54]
xor esi, esi
jmp 0x40f3dd
mov edx, dword [ebp - 0x10]
cmp byte [edx + 0x103], 0
jne 0x478e73
cmp edi, 0x41
jne 0x478e73
push 0
push 0
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.0040d6e9
jmp case.default.0x40fb08
mov ebx, dword [ebp - 0x3c]
jmp 0x40f728
mov ebx, dword [ebx + 4]
jmp case.0x40fc43.2
xor ebx, ebx
jmp case.0x40fc43.2
push dword [ebp - 0x54]
jmp 0x478bb1
mov ebx, dword [ebp - 0x2c]
jmp 0x40f8a3
mov ebx, dword [ebx + 4]
jmp case.0x40fc8b.2
xor ebx, ebx
jmp case.0x40fc8b.2
push dword [ebp - 0x1c]
jmp 0x478d6b
inc ebp
cld
push edx
call 0x7647860f
jmp 0x5440efc5
sbb al, 0x70
or al, ch
invalid
jmp [edx + 0x69]
inc esp
push eax
push 0xf96839e9
push ebx
test edi, edi
push 0xfffa4481
push 0x63
dec dword [ecx + 0x68288b03]
adc eax, 0x48d028
mov ecx, 0xd48dfff9
push eax
xor al, 0x8b
pop ebp
clc
push ebx
jbe 0x4787db
cli
jmp [edx + 0x63]
call 0x764a5c0d
push 1
or ebx, 0x6a2e7602
add dword [ecx - 0x5bb3620], eax
jmp [edx + 8]
add al, 0x8b
jo 0x4787d4
clc
mov ecx, esi
call fcn.0044e697
jmp 0x8d5b964d
push eax
push edx
push dword [ebp + 0x10]
mov dword [esi], edx
inc ebp
std
add byte [eax + 0x66], dl
in al, 0x84
rol byte [eax + 3], cl
ret
dec ebp
invalid
psubsb mm7, qword [0x8553f942]
invalid
push eax
xor al, 0x8b
pop ebp
clc
lea eax, [ebp - 0x8c]
adc al, 0x8b
add al, 0x81
push ds
jne 0x4789a9
dec dword [ebp - 0x8b73]
invalid
int 0x9c
push edi
stc
add cl, ch
aam 0xe8
invalid
call 0xf8cac4f0
or dword [edi], ecx
test byte [ebx + 0x5d8bd07d], cl
les eax, [ecx]
add dword [edi], ecx
invalid
mov bl, 0xa1
insd dword es:[edi], dx
invalid
add dword [edi], ecx
test byte [ebx - 0x2074925f], dh
insd dword es:[edi], dx
fcomp dword [esp + ecx*4 + 0x7d8bfffa]
ror byte [ebx + 0xf01c45d], 1
test byte [ebx - 0xf460073], dh
and byte [ebp - 0x3c], bl
js 0x478a7a
fild qword [ebp - 0x28]
pushfd
invalid
add al, 0xe9
cmp bh, 0xb9
lock and byte [ebp - 0x3c], bl
js 0x478a55
cmp edx, 8
jg 0x8b67f7c7
inc eax
add al, 0x8b
lea eax, [ebp - 0x6c]
push eax
call 0xf9447dde
cld
clc
or dword [edi], ecx
xchg esp, eax
add dword [edi], ecx
test byte [ebx + 0x73086d5d], dh
add eax, 0x4d8dcc45
invalid
inc ebp
int3
jl 0x478a7b
invalid
invalid
call 0xfa26f88e
xor al, 0x8b
push cs
or al, 0x8b
jne 0x478b23
xor al, 0x75
invalid
insd dword es:[edi], dx
or byte [ebx + 5], dh
inc ebp
invalid
cli
inc dword [ecx]
je 0x8bb4a22a
fisttp word [ebx + 0x488bc44d]
fstp st(0)
or ebp, dword [ebp + 8]
ja 0xfc5464f2
invalid
dec ebp
les ecx, [ebx - 0x202722b8]
insb byte es:[edi], dx
or byte [edi], cl
xchg dword [edx - 0x7d], ebp
lahf
clc
invalid
sbb dword [edi - 0x2b160008], 0x6c
rol byte [ebx + 0x3230ffb], 0x4d
ror byte [edx + 0x48], 0x23
ret 0x408b
jmp 0x8407f88e
and eax, edx
mov eax, dword [eax + 4]
mov dword [0x8b34f900], eax
dec ebx
add al, 0x8b
lea eax, [ebp - 0x48]
push eax
xor al, 0x8b
pop ebp
clc
jmp 0x75d164a0
call 0x5345e4a9
push eax
sbb edi, dword [ecx]
invalid
jbe 0x478cd5
invalid
invalid
inc ebp
aam 1
inc eax
std
int3
test ecx, edi
push esp
je 0x45d2f520
add al, 0x85
stc
push ebp
je 0x45d2f520
add al, 0x85
stc
test ecx, edi
push esi
je 0x68aef520
stc
call dword [eax - 0xfb8865d]
push eax
fucomi st(1)
mov bl, 0xa4
cli
call 0x5f2fccfb
fld xword [eax + 0x15]
sub al, dl
inc ebp
fcom qword [eax + 0x66]
in al, 0x8b
adc al, ch
jb 0x478d57
invalid
call 0x64cd18c8
or dword [ecx + 0xf], ebx
invalid
add dword [edi], ecx
test byte [ebx - 0x72000604], dh
dec ebp
call 0x104216c0
invalid
add al, 0xe9
fisttp qword [eax]
add dh, byte [esi + 0x2e]
pop ebp
aam 0x78
adc eax, dword [ebx - 0x70f0f706]
xlatb
imul esp, dword [eax], 0xffffff8b
inc eax
add al, 0x8b
lea eax, [ebp + 0xf59097c]
test al, ch
invalid
test dword [ecx + ecx + 0x59], edi
je 0xfd37f261
clc
or dword [ebp + 0xf59097c], eax
add dword [edi], ecx
jl 0x478d87
pop ecx
sidt [edi]
test byte [ebx + 0x28156bb2], dh
rol byte [ebp - 0x24], 1
push eax
in al, 0x8b
sub al, dl
inc ebp
fcom qword [eax + 0x66]
in al, 0x8b
adc al, ch
inc edx
invalid
inc ebp
call 0x45d2a924
clc
jbe 0xe8fc0f00
dec edx
aaa
call 0xb4a51944
mov edx, dword [ebp - 0x50]
add dword [edi], ecx
test byte [ebx + 0x28156bb2], dh
push edx
call 0x104216c0
call dword [ebp - 0x50]
add dword [edi], ecx
test byte [ebx + 0x6b9fe9d8], cl
mov dword [0x4c1130], eax
call 0x8c0822e6
fsubr st(1)
xchg ecx, eax
imul ecx, dword [eax], 0x73
add eax, 0x8fa8313
jg 0x478df6
pop ebp
mov ah, 0x8b
push ebp
mov al, 1
je 0x15b34066
sub byte [edx - 0x18], dl
push es
mov edx, edi
ud0
inc eax
add al, 0x8b
lea eax, [ebp - 0x34]
push eax
call 0xf9dfabde
xor al, 0x5d
int3
add eax, 0xb0e9b055
outsd dx, dword [esi]
mov al, 0xe9
mov al, 0x6f
adc eax, 0x441d028
inc edi
add al, 0x8b
add al, 0x14
lea eax, [ecx + 1]
push eax
push edx
jnp 0x478df8
add eax, 0x6a9875ff
jp 0x478e18
sub ax, 0xffe0
std
add byte [eax + 0x66], dl
in al, 0x84
in al, dx
push edx
ljmp 0x820f
call 0xfa26fa11
xor al, 0x8b
push cs
or al, 0x8b
jne 0x478e67
xor al, 0x75
aam 0xe8
mov ah, byte [edi - 6]
inc dword [ecx]
je 0x1538252d
add dword [edi], ecx
test byte [ebx + 0x5614f096], dh
push esi
mov dword [ebp - 0x2c], 0xd8dd488b
mov ebp, dword [ebx + 8]
ja 0xe85b0cf5
jle 0x478e9d
invalid
jle 0x478e9d
call 0x6bc7f4ed
stc
add byte [eax + 0x66], dl
in al, 0x84
pop esi
sub byte [ebx - 7], 0
push eax
in al, 0x84
les ecx, [esi + 0xf]
test ah, ah
jae 0x478f07
adc eax, 0xd445d028
cld
sub al, dl
inc ebp
aam 0xfc
mov eax, dword [ebp + 4]
push esp
invalid
stc
dec dword [ebx - 0x2bf327b3]
call fcn.0041f5fd
add dword [edi], ecx
test byte [ebx + 0x5614f055], dh
push ebp
invalid
adc al, 0x56
mov dword [ebp - 0x2c], 0xd8dd488b
dec edx
imul ecx, dword [eax], 0xf
xchg dword [edx - 0x6b], ebp
push 0xffffffffffffff95
push ebp
invalid
push 0xffffffffffffff95
or esp, edi
invalid
mov dword [ebp - 0x2c], 0xd8dd488b
push ds
imul ecx, dword [eax], 0xf
or byte [edi], cl
xchg dword [edx + 0x3f], ebp
pushfd
clc
invalid
push 0xa390fff9
jns 0x478f4b
invalid
push 0x72
call 0x5f2fccfb
lodsw ax, word [esi]
jb 0x478ef1
out dx, al
cmp eax, 0xad665ee8
cmp ax, 0x14
jl 0x8990876e
xor ah, 0
jns 0x478f06
fnstcw word [0x98665ee8]
push 0x458d
aam 0x50
call 0x92305d66
xchg ecx, eax
xchg ecx, eax
adc eax, ebp
pop esi
mov byte [esi + 0x68], ah
lea eax, [ebp - 0x2c]
push eax
call 0x84305d76
adc cl, ah
stc
call dword [ecx + 0x66]
push ecx
push 0x458d
aam 0x50
push ecx
push 0x458d
aam 0x50
call 0x92305d86
adc ah, cl
stc
aaa
into
call 0xfa139fe3
jmp [eax + 0x66]
aam 0x50
call 0x73305d96
pop ss
mov dword [ebx], eax
mov ebx, dword [eax + 0x66]
call 0x94237db
mov eax, dword [ebp + 4]
invalid
stc
jle 0x478fe3
cli
inc dword [ecx]
je 0xf9adb039
xor al, 0x48
dec eax
jne 0x478fa2
mov eax, dword [ecx]
push ss
or byte [edi], cl
ja 0xcc5a0300
ja 0xcc5a0300
stc
dec dword [ebx]
or cl, ch
adc bh, bl
stc
xor al, 0x8b
push cs
push edi
cli
inc dword [ecx]
je 0x4e416ee1
cli
cli
inc dword [ecx]
je 0xf9ad7f6a
xor al, 0x48
dec eax
jne 0x478fd3
mov eax, dword [ecx]
in eax, 0x65
or byte [edi], cl
xchg dword [edx - 0x66], ebp
invalid
or ah, bh
invalid
lcall 0x65da, 0xe9fffc08
stc
xor al, 0x48
dec eax
jne 0x478fe8
mov eax, dword [ecx]
shl byte [ebp + 8], 1
ja 0xfc503f46
or ah, bh
or ah, bh
invalid
dec eax
jne 0x478ffd
mov eax, dword [ecx]
mov ebx, 0x870f0865
push 0x46
wait
clc
invalid
add al, 0xd4
invalid