Function at 0x422178
Capabilities:
Copy file
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x458
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x54], 0x314a3f49
mov dword [esp + 0x58], 0x35513357
mov dword [esp + 0x5c], 0x4908374b
mov dword [esp + 0x60], 0x4dc24b2f
mov dword [esp + 0x64], 0x414e4f2b
mov dword [esp + 0x68], 0
xor eax, eax
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x54]
mov esi, eax
and esi, 0x2a
mov ebx, ecx
xor ebx, 0xe482a635
add ebx, esi
mov esi, ebx
and esi, edx
add edx, ebx
mov edi, edx
not edi
lea edi, [edi + esi*2]
and edi, ebx
mov ebx, edi
and ebx, 0xe482a67d
mov esi, edi
or esi, 0xfffffffd
inc esi
imul esi, ebx
mov ebx, edi
and ebx, 2
or edi, 2
imul edi, ebx
sub esi, edi
add esi, edx
mov edx, esi
and edx, 1
xor esi, 1
lea edx, [esi + edx*2]
add dl, 0xf6
mov byte [esp + ecx + 0x54], dl
inc ecx
add eax, 2
cmp ecx, 0x18
jne case.default.0x4215f1
lea edi, [esp + 0x54]
lea ecx, [esp + 0x34]
push edi
call fcn.00436090
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x444d50]
jmp dword [0x444d58]
lea ecx, [esp + 0x34]
push 0x410
call fcn.004362a0
nop
nop
nop
nop
lea ecx, [esp + 0x34]
push 0x410
call fcn.004362a0
jmp dword [0x444d64]
mov ecx, dword [case.0x4215f1.7]
nop
nop
nop
nop
nop
nop
jmp ecx
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x444d78]
mov dword [esp + 0x54], 0x6a035865
mov dword [esp + 0x58], 0x506a0d60
mov dword [esp + 0x5c], 0x6c656301
mov dword [esp + 0x60], 0x775e6605
mov dword [esp + 0x64], 0x207b7206
mov dword [esp + 0x68], 0x1f7c767d
mov dword [esp + 0x6c], 0x12197e1a
mov dword [esp + 0x70], 0x167f1473
mov dword [esp + 0x74], 0x66101612
mov dword [esp + 0x78], 0xe637511
mov dword [esp + 0x7c], 0xab7a6161
mov word [esp + 0x80], 0
mov eax, 0x30
mov ecx, 0xcf
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x24]
mov esi, ecx
or esi, edx
not edx
or edx, eax
and edx, esi
mov bl, 0xf
sub bl, dl
mov byte [esp + eax + 0x24], bl
inc eax
dec ecx
cmp eax, 0x5e
jne case.default.0x4216f0
lea eax, [esp + 0x48]
lea ecx, [esp + 0x34]
push 0
push 0x2b
push edi
push eax
call fcn.00436b60
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x4c]
xor eax, eax
cmp edi, esi
sete al
jmp dword [eax*4 + 0x444d80]
mov eax, esi
not eax
and eax, edi
mov ecx, edi
not ecx
and ecx, esi
sub ecx, eax
sar ecx, 3
imul eax, ecx, 0x421
push eax
call fcn.00408350
add esp, 4
mov dword [esp + 0x24], 0
xor ecx, ecx
cmp edi, esi
setne cl
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x28], esi
jmp dword [ecx*4 + 0x444d88]
mov ebx, dword [esp + 0x24]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x444d90]
mov edi, dword [esp + 0x20]
jmp dword [0x444e30]
mov edi, dword [esp + 0x2c]
add edi, 8
xor eax, eax
mov esi, dword [esp + 0x28]
cmp edi, esi
setne al
jmp dword [eax*4 + 0x444d88]
mov esi, dword [edi]
mov dword [esp + 0x2c], edi
mov edi, dword [edi + 4]
push 0x400
push 0
lea ebx, [esp + 0x5c]
push ebx
call fcn.004084e0
add esp, 0xc
lea eax, [esp + 8]
lea ecx, [esp + 0x34]
push eax
push 0
push 0x400
push ebx
push edi
push esi
call fcn.00436a00
cmp eax, 0xc0000000
setae al
mov ecx, dword [esp + 8]
or ecx, dword [esp + 0xc]
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x444d98]
mov eax, 1
lea esi, [esp + 0x54]
jmp dword [eax*4 + 0x444da0]
xor eax, eax
lea esi, [esp + 0x54]
jmp dword [eax*4 + 0x444da0]
jmp dword [0x444db0]
mov byte [esp + 0x453], 0
movzx ecx, byte [esp + 0x54]
xor eax, eax
test cl, cl
je 0x4217f0
mov edx, esi
nop
nop
nop
nop
nop
cmp cl, 0x2e
je 0x421820
movzx ecx, byte [edx + 1]
inc edx
test cl, cl
jne 0x421810
jmp 0x4217f0
mov eax, edx
jmp dword [0x444db0]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x444db8]
jmp dword [0x444dc8]
lea esi, [eax + 1]
movzx ecx, byte [eax + 1]
xor ebx, ebx
test cl, cl
je 0x421840
mov edx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp cl, 0x2e
je 0x421870
movzx ecx, byte [edx + 1]
inc edx
test cl, cl
jne 0x421860
jmp 0x421840
mov ebx, edx
jmp dword [0x444dc8]
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x444dd0]
mov edx, ebx
sub edx, esi
mov eax, edx
and eax, 0xfffffffc
mov ecx, edx
and ecx, 3
mov edi, edx
or edi, 3
imul edi, ecx
xor ecx, 3
imul ecx, eax
add edi, ecx
shr edi, 2
movzx eax, byte [ebx - 1]
cmp eax, 0x3d
je 0x4218b5
cmp eax, 0x2e
jne 0x4218b6
dec edi
movzx eax, byte [esi + edx - 2]
cmp eax, 0x3d
mov dword [esp + 0x18], edx
je 0x4218c9
cmp eax, 0x2e
jne 0x4218ca
dec edi
mov dword [esp + 0x44], edi
lea eax, [edi + 1]
push eax
call fcn.00408350
add esp, 4
mov dword [esp + 4], eax
mov dword [esp + 0x1c], esi
cmp ebx, esi
je 0x4219df
xor edi, edi
xor esi, esi
jmp 0x421906
mov eax, esi
and eax, 4
xor esi, 4
lea esi, [esi + eax*2]
mov edi, dword [esp]
cmp esi, edx
jae 0x4219df
mov ebx, dword [esp + 0x1c]
movzx eax, byte [ebx + esi]
push eax
call fcn.00418600
add esp, 4
mov byte [esp], al
movzx eax, byte [ebx + esi + 1]
push eax
call fcn.00418600
add esp, 4
mov ebx, eax
movzx edx, byte [esp]
shl dl, 2
xor al, 0xc0
mov ecx, ebx
or cl, 0x30
and cl, al
shr cl, 4
add cl, dl
lea eax, [edi + 1]
mov dword [esp], eax
mov eax, dword [esp + 4]
mov dword [esp + 0x30], edi
mov byte [eax + edi], cl
lea eax, [esi + 2]
mov edx, dword [esp + 0x18]
cmp eax, edx
jae 0x4218f0
mov ecx, dword [esp + 0x1c]
movzx eax, byte [ecx + eax]
push eax
call fcn.00418600
mov edx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
je 0x4218f0
shl bl, 4
mov ecx, eax
shr cl, 2
and cl, 0xf
or cl, bl
mov ebx, dword [esp + 0x30]
lea edi, [ebx + 2]
mov dword [esp], edi
mov edi, dword [esp + 4]
mov byte [edi + ebx + 1], cl
lea ecx, [esi + 3]
cmp ecx, edx
jae 0x4218f0
mov edx, dword [esp + 0x1c]
movzx ecx, byte [edx + ecx]
push ecx
mov ebx, eax
call fcn.00418600
mov edx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
je 0x4218f0
mov ecx, ebx
shl cl, 6
add al, cl
mov ecx, dword [esp + 4]
mov edi, dword [esp + 0x30]
mov byte [ecx + edi + 2], al
add edi, 3
mov dword [esp], edi
jmp 0x4218f0
mov eax, dword [esp + 0x44]
mov ebx, dword [esp + 4]
mov byte [ebx + eax], 0
push ebx
call fcn.00401000
add esp, 4
mov dword [esp], eax
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x2c]
jmp dword [0x444dd8]
jmp dword [0x444de0]
movzx ecx, byte [eax]
test cl, cl
je 0x421a2b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esi], cl
inc esi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x421a20
mov word [esi], 0x203a
add esi, 2
jmp case.0x4216f0.33
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x444e00]
jmp 0x421ab9
mov dword [esp + 8], 0xe1046869
mov word [esp + 0xc], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x29
xor dl, byte [esp + ecx + 8]
add dl, 0x33
mov byte [esp + ecx + 8], dl
inc ecx
cmp ecx, 6
jne case.default.0x421a8b
lea ecx, [esp + 8]
push ecx
push eax
call fcn.00401880
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x444e08]
movzx eax, byte [esp + 0x54]
test al, al
je 0x421aab
lea ecx, [esp + 0x55]
nop
mov byte [esi], al
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x421aa0
mov byte [esi], 0xa
inc esi
mov dword [esp + 0x14], esi
mov al, 1
mov dword [esp + 0x24], eax
push ebx
call fcn.00401ba0
add esp, 4
add edi, 8
xor eax, eax
mov esi, dword [esp + 0x28]
cmp edi, esi
setne al
jmp dword [eax*4 + 0x444d88]
mov ebx, dword [esp]
push ebx
call fcn.00401930
add esp, 4
mov ecx, dword [case.0x4216f0.29]
nop
nop
nop
nop
nop
nop
nop
jmp ecx
push ebx
call fcn.00408360
add esp, 4
push ebx
call fcn.00408360
add esp, 4
jmp dword [0x444de8]
xor ebx, ebx
test edi, edi
jne 0x421c67
jmp case.0x4215f1.0
mov esi, dword [ebp + 8]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x14]
jmp dword [0x444e24]
mov byte [ebx], 0
mov dword [esp + 0x54], 0x30609d9
mov dword [esp + 0x58], 0x1f330a0d
mov dword [esp + 0x5c], 0x1c0209
mov dword [esp + 0x60], 0x160622df
mov dword [esp + 0x64], 0x2bd51c29
mov dword [esp + 0x68], 0x111f1217
mov dword [esp + 0x6c], 0x7772d30f
mov word [esp + 0x70], 0xfd70
mov dword [esp + 0x72], 0
mov word [esp + 0x76], 0
mov eax, 0x26
movzx ecx, byte [esp + eax + 0x2e]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0x42
mov byte [esp + eax + 0x2e], cl
inc eax
cmp eax, 0x4a
jne 0x421b80
mov eax, ebx
sub eax, edi
lea edx, [esp + 0x54]
mov ecx, esi
push eax
push edi
push edx
call fcn.00409390
mov byte [ebx], 0
mov dword [esp + 0x54], 0x30609d9
mov dword [esp + 0x58], 0x1f330a0d
mov dword [esp + 0x5c], 0x1c0209
mov dword [esp + 0x60], 0x160622df
mov dword [esp + 0x64], 0x2bd51c29
mov dword [esp + 0x68], 0x111f1217
mov dword [esp + 0x6c], 0x7772d30f
mov word [esp + 0x70], 0xfd70
mov dword [esp + 0x72], 0
mov word [esp + 0x76], 0
mov eax, 0x26
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x2e]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0x42
mov byte [esp + eax + 0x2e], cl
inc eax
cmp eax, 0x4a
jne 0x421c10
mov eax, ebx
sub eax, edi
lea edx, [esp + 0x54]
mov ecx, esi
push eax
push edi
push edx
call fcn.00409390
jmp dword [0x444e28]
mov ebx, eax
jmp dword [0x444e30]
push edi
call fcn.00408360
add esp, 4
and bl, 1
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x4c]
test edi, edi
je case.0x4215f1.0
cmp edi, esi
je case.0x4215f1.0
push edi
call fcn.00408360
add esp, 4
lea ecx, [esp + 0x34]
call fcn.004363d0
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3
mov dword [ebp - 0xd0], 0x61f067df
mov dword [ebp - 0xcc], 0x5dee63ed
mov dword [ebp - 0xc8], 0x59ca5fff
mov dword [ebp - 0xc4], 0x55ea5bcc
mov dword [ebp - 0xc0], 0x51da57f7
mov dword [ebp - 0xbc], 0x4d5253c8
mov word [ebp - 0xb8], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [ebp + eax - 0xd0]
lea ecx, [eax + 1]
mov esi, 0xe6
sub esi, eax
mov edi, 0x66
sub edi, eax
and edi, 0x78
and ecx, 7
or ecx, edi
xor ecx, 0x87
and ecx, esi
xor ecx, esi
not ecx
and ecx, edx
xor ecx, esi
mov dl, 0x82
sub dl, cl
mov byte [ebp + eax - 0xd0], dl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0x1a
jb 0x421d20
mov dword [ebp - 0x9c], 0x9e40be8
mov dword [ebp - 0x98], 0x5df07d3
mov dword [ebp - 0x94], 0x1ef03d3
mov dword [ebp - 0x90], 0x1df01fec
mov dword [ebp - 0x8c], 0x19fe1bfb
mov dword [ebp - 0x88], 0x15c917cb
mov dword [ebp - 0x84], 0x11ca13c9
mov dword [ebp - 0x80], 0x2dfc2fc7
mov dword [ebp - 0x7c], 0x29ce2bf7
mov dword [ebp - 0x78], 0x25f727c5
mov dword [ebp - 0x74], 0x21ce23fe
mov dword [ebp - 0x70], 0x3de13fc9
mov dword [ebp - 0x6c], 0x39e13bd2
mov dword [ebp - 0x68], 0x35dc37dc
mov dword [ebp - 0x64], 0x31c633cb
mov dword [ebp - 0x60], 0xcd35cfba
mov dword [ebp - 0x5c], 0xc927cb28
mov dword [ebp - 0x58], 0xc53dc744
mov dword [ebp - 0x54], 0xc131c33b
mov word [ebp - 0x50], 0xdfc0
mov word [ebp - 0x4a], 0
mov dword [ebp - 0x4e], 0
xor ecx, ecx
mov eax, 0xffffffff
mov edx, eax
or edx, 0x43
add edx, ecx
mov esi, ecx
xor esi, 0xc3
lea edx, [esi + edx*2]
add dl, 2
xor dl, byte [ebp + ecx - 0x9c]
add dl, 0x31
mov byte [ebp + ecx - 0x9c], dl
lea edx, [ecx + 1]
dec eax
mov ecx, edx
cmp edx, 0x54
jne 0x421e20
lea eax, [ebp - 0xd0]
lea ecx, [ebp - 0x9c]
push eax
push ecx
call fcn.00434250
add esp, 8
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x4e]
push eax
push eax
mov dword [ebp - 0x30], esp
sub esp, 8
mov dword [ebp - 0xac], esp
sub esp, 8
mov dword [ebp - 0x34], esp
sub esp, 0x24
mov dword [ebp - 0xb0], esp
mov dword [ebp - 0xd0], 0x61f067df
mov dword [ebp - 0xcc], 0x5dee63ed
mov dword [ebp - 0xc8], 0x59ca5fff
mov dword [ebp - 0xc4], 0x55ea5bcc
mov dword [ebp - 0xc0], 0x51da57f7
mov dword [ebp - 0xbc], 0x4d5253c8
mov word [ebp - 0xb8], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [ebp + ecx - 0xd0]
lea edx, [ecx + 1]
mov edi, 0xe6
sub edi, ecx
mov ebx, 0x66
sub ebx, ecx
and ebx, 0x78
and edx, 7
or edx, ebx
xor edx, 0x87
and edx, edi
xor edx, edi
not edx
and edx, esi
xor edx, edi
mov bl, 0x82
sub bl, dl
mov byte [ebp + ecx - 0xd0], bl
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
cmp ecx, 0x1a
jb 0x421ee0
mov dword [ebp - 0x9c], 0x9e40be8
mov dword [ebp - 0x98], 0x5df07d3
mov dword [ebp - 0x94], 0x1ef03d3
mov dword [ebp - 0x90], 0x1df01fec
mov dword [ebp - 0x8c], 0x19fe1bfb
mov dword [ebp - 0x88], 0x15c917cb
mov dword [ebp - 0x84], 0x11ca13c9
mov dword [ebp - 0x80], 0x2dfc2fc7
mov dword [ebp - 0x7c], 0x29ce2bf7
mov dword [ebp - 0x78], 0x25f727c5
mov dword [ebp - 0x74], 0x21ce23fe
mov dword [ebp - 0x70], 0x3de13fc9
mov dword [ebp - 0x6c], 0x39e13bd2
mov dword [ebp - 0x68], 0x35dc37dc
mov dword [ebp - 0x64], 0x31c633cb
mov dword [ebp - 0x60], 0xcd35cfba
mov dword [ebp - 0x5c], 0xc927cb28
mov dword [ebp - 0x58], 0xc53dc744
mov dword [ebp - 0x54], 0xc131c33b
mov word [ebp - 0x50], 0xdfc0
mov word [eax + 4], 0
mov dword [eax], 0
xor ecx, ecx
mov eax, 0xffffffff
nop
mov edx, eax
or edx, 0x43
add edx, ecx
mov esi, ecx
xor esi, 0xc3
lea edx, [esi + edx*2]
add dl, 2
xor dl, byte [ebp + ecx - 0x9c]
add dl, 0x31
mov byte [ebp + ecx - 0x9c], dl
lea edx, [ecx + 1]
dec eax
mov ecx, edx
cmp edx, 0x54
jne 0x421fe0
lea edi, [ebp - 0xd0]
lea esi, [ebp - 0x9c]
push edi
push esi
call fcn.00434250
add esp, 8
jmp dword [0x444e44]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x444e48]
mov edx, eax
nop
nop
nop
mov ecx, edx
add edx, 2
cmp word [ecx], 0
jne 0x422040
sub ecx, eax
mov ebx, eax
cmp ecx, 0xffffffd9
jge 0x422062
mov ecx, 0xffffffff
jmp 0x422065
xor eax, eax
jmp 0x4229d8
add ecx, 0x26
push ecx
call fcn.00408350
add esp, 4
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x9c], 0xf95ffba8
mov dword [ebp - 0x98], 0xfd6cff69
mov dword [ebp - 0x94], 0xf16df366
mov dword [ebp - 0x90], 0xf55af769
mov dword [ebp - 0x8c], 0xe97beb51
mov dword [ebp - 0x88], 0xed74ef7a
mov dword [ebp - 0x84], 0xe17be373
mov dword [ebp - 0x80], 0xe56ce732
mov dword [ebp - 0x7c], 0xd940db40
mov dword [ebp - 0x78], 0xdfd8
xor eax, eax
nop
nop
mov ecx, eax
add cl, 0x7f
xor cl, byte [ebp + eax - 0x9c]
add cl, 0x85
mov byte [ebp + eax - 0x9c], cl
inc eax
cmp eax, 0x28
jne 0x4220d0
mov eax, ebx
movzx edx, word [ebx]
mov ecx, dword [ebp - 0x20]
test dx, dx
je 0x422121
mov ebx, eax
add ebx, 2
mov ecx, dword [ebp - 0x20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [ebx]
add ebx, 2
test dx, dx
jne 0x422110
mov word [ecx], 0
movzx edx, word [ebp - 0x9c]
test dx, dx
je 0x422151
lea ebx, [ebp - 0x9a]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [ebx]
add ebx, 2
test dx, dx
jne 0x422140
mov word [ecx], 0
jmp dword [0x444e50]
push eax
call fcn.00408360
add esp, 4
xor eax, eax
mov ebx, dword [ebp - 0x20]
cmp word [ebx], 0x2a
sete al
jmp dword [eax*4 + 0x444e58]
xor eax, eax
mov ebx, dword [ebp - 0x20]
cmp word [ebx], 0x2a
sete al
jmp dword [eax*4 + 0x444e58]
mov dword [ebp - 0x9c], 0x29542b61
mov dword [ebp - 0x98], 0x2d8b2f74
mov dword [ebp - 0x94], 0x3180339d
mov dword [ebp - 0x90], 0x3599379a
mov dword [ebp - 0x8c], 0x39663b9d
mov dword [ebp - 0x88], 0x3d8f3f9d
mov dword [ebp - 0x84], 0x1a8038e
mov dword [ebp - 0x80], 0x5af07af
mov dword [ebp - 0x7c], 0x9b00b76
mov dword [ebp - 0x78], 0xda40fac
mov word [ebp - 0x74], 0x130c
mov dword [ebp - 0x72], 0
mov byte [ebp - 0x6e], 0
mov eax, 0x87
mov ecx, 0xa46c3278
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [ebp + eax - 0x123]
mov ebx, ecx
or ebx, edx
not edx
or edx, eax
and edx, ebx
mov ebx, edx
not ebx
and ebx, 0x5c
xor edx, 0xa3
lea edx, [edx + ebx*2]
inc dl
mov byte [ebp + eax - 0x123], dl
inc eax
dec ecx
cmp eax, 0xb6
jne case.default.0x422269
push 0
push esi
mov ebx, dword [ebp - 0x20]
push ebx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0x60
push 3
push 0x120089
push edi
push ebx
call fcn.0043cb50
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x444e60]
xor ecx, ecx
mov eax, dword [case.0x422269.25]
xor ebx, ebx
jmp case.0x422269.23
lea eax, [ebp - 0xb4]
push 0
push eax
push dword [ebp - 0xd0]
call fcn.0043ced0
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
xor edx, edx
jmp dword [eax*4 + 0x444e68]
mov edi, dword [ebp - 0xb4]
lea eax, [edi + 1]
push eax
call fcn.00408350
add esp, 4
push 0
push edi
mov dword [ebp - 0x28], eax
push eax
push dword [ebp - 0xd0]
call fcn.0043cfc0
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
xor edx, edx
jmp dword [eax*4 + 0x444e70]
jmp dword [0x444e78]
jmp dword [0x444eb0]
mov edi, dword [ebp - 0xd4]
mov ecx, edi
mov esi, edx
call fcn.00424f80
push edi
call fcn.00408360
mov edx, esi
add esp, 4
jmp dword [0x444eb8]
jmp dword [0x444eb8]
push dword [ebp - 0x28]
mov esi, edx
call fcn.00408360
mov edx, esi
add esp, 4
mov dword [ebp - 0x2c], edx
mov eax, ebx
mov ecx, dword [ebp - 0xd0]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x9c], 0xc0c7c6c5
mov word [ebp - 0x98], 0
mov byte [ebp - 0x96], 0
mov ecx, 0x59392cb1
mov edx, 0x4e
nop
movzx edi, byte [ebp + ecx - 0x59392d4d]
mov esi, edx
xor esi, ecx
and esi, edi
xor esi, ecx
lea edi, [esi + 0x79ee7905]
mov ebx, edi
and ebx, 0xa
xor edi, 0x8a
lea edi, [edi + ebx*2]
add edi, 0xfb
and esi, 1
xor edi, 1
lea ebx, [edi + esi*2]
mov byte [ebp + ecx - 0x59392d4d], bl
inc ecx
dec edx
cmp ecx, 0x59392cb8
jne 0x422350
mov ecx, dword [0x44a8e4]
test ecx, ecx
mov ebx, eax
je 0x4223dc
mov edx, dword [ebp - 0x9c]
xor esi, esi
mov edi, dword [0x44a8e8]
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x4223c0
inc esi
cmp ecx, esi
jne 0x4223b0
jmp 0x4223dc
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je 0x4223dc
push dword [ebp - 0x28]
push 1
push ecx
push dword [0x44a8ec]
call fcn.004390d0
add esp, 0x10
mov eax, dword [case.0x422269.25]
mov ecx, dword [ebp - 0x2c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x444ed0]
push dword [ebp - 0x20]
mov esi, ecx
call fcn.00408360
mov ecx, esi
add esp, 4
xor eax, eax
cmp esi, ebx
sete al
jmp dword [eax*4 + 0x444ed8]
xor eax, eax
test ecx, ecx
jne 0x4229a3
jmp 0x4229d8
xor eax, eax
cmp ecx, ebx
sete al
jmp dword [eax*4 + 0x444ed8]
mov eax, ecx
not eax
and eax, ebx
add eax, eax
mov dword [ebp - 0x2c], ecx
xor ecx, ebx
sub eax, ecx
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.00408350
add esp, 4
mov dword [ebp - 0x20], eax
mov esi, dword [ebp - 0x3c]
mov dword [esi], 0x13e6113d
mov dword [esi + 4], 0x1ffd1d8b
mov dword [esi + 8], 0x1b8e19f9
mov dword [esi + 0xc], 0x79605c5
mov dword [esi + 0x10], 0x3ce0190
mov dword [esi + 0x14], 0xf920ded
mov dword [esi + 0x18], 0xb2709e9
mov dword [esi + 0x1c], 0x37c535d0
mov dword [esi + 0x20], 0x33df31ac
mov dword [esi + 0x24], 0x3fab3ddd
mov dword [esi + 0x28], 0x3bae39dc
mov dword [esi + 0x2c], 0x27c525b3
mov dword [esi + 0x30], 0x23b621c1
mov dword [esi + 0x34], 0x2fb02dfa
mov dword [esi + 0x38], 0x2bc429c4
mov edx, dword [ebp - 0x40]
add edx, 0x3c
mov word [esi + 0x3c], 0xd5d4
mov byte [esi + 0x40], 0
mov word [esi + 0x3e], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xc4
xor cl, byte [esi + eax]
add cl, 0x2c
mov byte [esi + eax], cl
inc eax
cmp eax, 0x41
jne 0x4224e0
mov eax, dword [ebp - 0x38]
mov edi, eax
mov ecx, 0xf
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
mov edi, eax
add edi, 0x3c
mov ecx, 1
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov esi, dword [ebp - 0x44]
push esi
push 0
push 0
push 0x1e
push eax
push 0
call dword [0x44a8e0]
mov esi, dword [esi]
test esi, esi
jns 0x422535
mov eax, 0xffffffff
jmp 0x422538
lea eax, [esi + esi]
push eax
call fcn.00408350
add esp, 4
mov edi, eax
push dword [ebp - 0x44]
push esi
push eax
push 0x1e
push dword [ebp - 0x38]
push 0
call dword [0x44a8e0]
push 0x60
push 3
push 0x120089
mov esi, dword [ebp - 0xa8]
push esi
mov dword [ebp - 0x48], edi
push edi
call fcn.0043cb50
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x444ee0]
xor edx, edx
mov esi, dword [ebp - 0x20]
mov edi, esi
jmp dword [0x444f98]
mov dword [ebp - 0x10], edx
push dword [ebp - 0x48]
call fcn.00408360
add esp, 4
mov edx, dword [ebp - 0x10]
mov eax, edx
and al, 1
movzx ecx, al
mov eax, edx
jmp dword [ecx*4 + 0x444fa0]
mov dword [ebp - 0x14], ebx
jmp dword [0x444fa8]
mov byte [edi], 0
mov eax, edi
sub eax, esi
jmp dword [0x444fb4]
mov byte [edi], 0
mov byte [edi], 0
mov eax, edi
sub eax, esi
jmp dword [0x444fb4]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xb0]
mov dword [eax], 0x15161727
mov dword [eax + 4], 0x71011e1b
mov dword [eax + 8], 0x74080e07
mov dword [eax + 0xc], 0xa7616c9
mov dword [eax + 0x10], 0x1dc70017
mov dword [eax + 0x14], 0x7b0d0601
mov dword [eax + 0x18], 0x102b901
mov word [eax + 0x1c], 0x8b04
mov dword [eax + 0x1e], 0
mov byte [eax + 0x22], 0
mov ecx, 0x342abd29
mov dword [ebp - 0x34], 0xdd2b41d6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [ebp - 0x30], ecx
movzx edx, byte [eax + ecx - 0x342abd29]
lea eax, [ecx - 0x342abd00]
mov ecx, edx
not ecx
or ecx, eax
lea esi, [edx + ecx]
inc esi
mov edi, edx
mov dword [ebp - 0xac], edx
mov ecx, esi
and ecx, 2
mov edx, esi
or edx, 0xfffffffd
inc edx
mov eax, esi
and eax, 0xfffffffd
imul eax, edx
or esi, 2
imul esi, ecx
lea ebx, [eax + edi]
sub ebx, esi
add ebx, dword [ebp - 0x30]
mov edx, ebx
and edx, 0xfb2a4e30
mov ecx, ebx
and ecx, 2
mov edi, ecx
xor edi, 2
imul edi, edx
or edx, 2
imul edx, ecx
sub esi, eax
sub esi, dword [ebp - 0xac]
mov eax, ebx
and eax, 0xcd
add esi, dword [ebp - 0x34]
and esi, 0x32
or esi, eax
add esi, edi
add esi, edx
and ebx, 1
xor esi, 1
lea eax, [esi + ebx*2]
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0x30]
mov byte [ecx + edx - 0x342abd29], al
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xb0]
inc ecx
dec dword [ebp - 0x34]
cmp ecx, 0x342abd4c
jne 0x422640
mov ecx, dword [ebp + 8]
push dword [ebp - 0x28]
mov esi, dword [ebp - 0x20]
push esi
push eax
call fcn.00409390
mov ebx, dword [ebp - 0x14]
jmp dword [0x444fc8]
push 0
push dword [ebp - 0xa4]
push dword [esi]
call fcn.0043ced0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x10], 0
mov edi, dword [ebp - 0x20]
jmp dword [eax*4 + 0x444ee8]
mov eax, dword [ebp - 0xa4]
mov esi, dword [eax]
lea eax, [esi + 1]
push eax
call fcn.00408350
add esp, 4
push 0
push esi
mov esi, dword [ebp - 0xa8]
mov dword [ebp - 0x40], eax
push eax
push dword [esi]
call fcn.0043cfc0
add esp, 0x10
not eax
shr eax, 0x1f
xor edx, edx
mov edi, dword [ebp - 0x20]
jmp dword [eax*4 + 0x444ef0]
mov eax, dword [ebp - 0xa4]
mov esi, dword [eax]
mov edi, dword [ebp - 0x40]
mov byte [edi + esi], 0
push 0x20
call fcn.00408350
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [ebp - 0x3c], eax
mov ecx, eax
push esi
push edi
call fcn.00424bc0
movzx eax, al
xor edx, edx
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp dword [eax*4 + 0x444ef8]
mov esi, dword [ebp - 0xd8]
mov dword [esi], 0xede0eab1
mov dword [esi + 4], 0xe6e8d8f1
mov dword [esi + 8], 0xedd5d92d
mov dword [esi + 0xc], 0xc027ecfa
mov dword [esi + 0x10], 0xfacdf0e0
mov dword [esi + 0x14], 0xffff2a39
mov dword [esi + 0x18], 0xf5c7f8fe
mov dword [esi + 0x1c], 0xfdc3c025
mov dword [esi + 0x20], 0x5bff
mov byte [esi + 0x24], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, edx
xor edx, 0x47
lea eax, [edi + edi]
mov ecx, eax
and ecx, 0x70
sub ecx, edx
mov edx, edi
add cl, 0x86
xor cl, byte [esi + edi]
add cl, 0xc5
mov byte [esi + edi], cl
and eax, 2
xor edx, 1
add edx, eax
cmp edx, 0x25
jb case.default.0x422862
mov ecx, dword [ebp - 0x3c]
push esi
call fcn.00424e00
xor ecx, ecx
test eax, eax
setne cl
xor edx, edx
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edi
jmp dword [ecx*4 + 0x444f00]
mov esi, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x1c]
jmp dword [0x444f78]
mov edi, dword [ebp - 0x3c]
mov ecx, edi
mov dword [ebp - 0x10], edx
call fcn.00424f80
push edi
call fcn.00408360
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x1c]
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x444f88]
mov dword [ebp - 0x10], edx
jmp dword [0x444f90]
push dword [ebp - 0x40]
call fcn.00408360
add esp, 4
mov dword [ebp - 0x1c], edi
mov eax, ebx
mov ecx, dword [esi]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x9c], 0xc0c7c6c5
mov word [ebp - 0x98], 0
mov byte [ebp - 0x96], 0
mov ecx, 0x59392cb1
mov edx, 0x4e
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [ebp + ecx - 0x59392d4d]
mov esi, edx
xor esi, ecx
and esi, edi
xor esi, ecx
lea edi, [esi + 0x79ee7905]
mov ebx, edi
and ebx, 0xa
xor edi, 0x8a
lea edi, [edi + ebx*2]
add edi, 0xfb
and esi, 1
xor edi, 1
lea ebx, [edi + esi*2]
mov byte [ebp + ecx - 0x59392d4d], bl
inc ecx
dec edx
cmp ecx, 0x59392cb8
jne 0x4228f0
mov ecx, dword [0x44a8e4]
test ecx, ecx
mov ebx, eax
je 0x422968
mov edx, dword [ebp - 0x9c]
xor esi, esi
mov edi, dword [0x44a8e8]
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x422960
inc esi
cmp ecx, esi
jne 0x422950
jmp 0x422968
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x4229e0
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x1c]
jmp dword [0x444f98]
mov eax, edx
and al, 1
movzx ecx, al
mov eax, edx
jmp dword [ecx*4 + 0x444fa0]
jmp dword [0x444fc8]
push esi
mov esi, eax
call fcn.00408360
mov eax, esi
add esp, 4
and al, 1
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x4229d8
cmp ecx, ebx
je 0x4229d8
mov dword [ebp - 0x10], eax
mov esi, ecx
jmp 0x4229b7
add esi, 8
cmp esi, ebx
je 0x4229cc
mov eax, dword [esi]
test eax, eax
je 0x4229b0
push eax
mov edi, ecx
call fcn.00408360
mov ecx, edi
add esp, 4
jmp 0x4229b0
push ecx
call fcn.00408360
add esp, 4
mov eax, dword [ebp - 0x10]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push dword [ebp - 0x30]
push 1
push ecx
push dword [0x44a8ec]
call fcn.004390d0
add esp, 0x10
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x1c]
jmp dword [0x444f98]
add eax, 8
xor edx, edx
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
mov dword [ebp - 0x1c], edi
jmp dword [eax*4 + 0x444f08]
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x444f08]
mov eax, dword [esi]
mov dword [ebp - 0x24], eax
cmp dword [esi + 0x18], 3
mov edi, 0
jne case.default.0x422a52
mov edi, dword [esi + 0x10]
cmp dword [ebp - 0x24], 0
setne al
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x444f10]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x14], ebx
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x422a9b
sub ecx, edi
inc ecx
shr ecx, 1
mov dword [ebp - 0x44], ecx
lea eax, [ecx + 1]
push eax
call fcn.00408350
add esp, 4
mov ebx, eax
movsx eax, byte [edi]
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0x38], ebx
jmp dword [ecx*4 + 0x444f18]
mov byte [ebx], al
inc ebx
movsx eax, byte [edi]
xor edx, edx
test eax, eax
setne dl
jmp dword [edx*4 + 0x444f18]
mov dword [ebp - 0x28], edi
inc edi
mov edx, eax
or edx, 0x20
lea esi, [edx - 0x61]
cmp esi, 5
ja case.default.0x422aeb
and eax, 0xffffff9e
xor edx, 0xffffff9e
lea eax, [edx + eax*2]
add eax, 0xb
movsx edx, byte [edi]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x444f20]
add eax, 0xffffffd0
cmp eax, 0xa
jb case.default.0x422b17
mov eax, 0xffffffff
movsx edx, byte [edi]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x444f20]
shl eax, 4
mov edi, dword [ebp - 0x28]
add edi, 2
mov ecx, edx
or ecx, 0x20
lea esi, [ecx - 0x61]
cmp esi, 5
ja case.default.0x422b4f
and edx, 0xffffff9e
xor ecx, 0xffffff9e
lea ecx, [ecx + edx*2]
add ecx, 0xb
or ecx, eax
mov byte [ebx], cl
inc ebx
movsx eax, byte [edi]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x444f18]
add edx, 0xffffffd0
cmp edx, 0xa
jb case.default.0x422b7c
mov edx, 0xffffffff
or edx, eax
mov byte [ebx], dl
inc ebx
movsx eax, byte [edi]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x444f18]
mov esi, dword [ebp - 0x24]
jmp dword [0x444f2c]
xor ecx, ecx
mov edx, dword [ebp - 0x24]
test edx, edx
setne cl
jmp dword [ecx*4 + 0x444f50]
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0x18]
jmp dword [0x444f70]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x38]
mov dword [eax + 4], ecx
mov eax, 0xffffffff
mov ebx, dword [ebp - 0x14]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edx + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x422c21
mov esi, dword [ebp - 0xac]
mov dword [esi], eax
mov dword [esi + 4], edx
mov edi, dword [ebp - 0x34]
mov dword [edi], 0
mov dword [edi + 4], 0
push 0x14e20a34
push dword [0x44a8f0]
mov dword [ebp - 0x24], edx
call fcn.0043c0e0
add esp, 8
push edi
push 1
push 0
push 0
push esi
push 0
push dword [ebp - 0x30]
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x444f58]
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0x18]
jmp dword [0x444f70]
mov ecx, dword [ebp - 0x24]
movzx eax, byte [ecx]
test al, al
mov edi, dword [ebp - 0x1c]
je 0x422c5b
inc ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x422c50
mov word [edi], 0x203a
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
add edi, 2
test edx, edx
je 0x422c9e
mov eax, dword [eax + 4]
mov ecx, edx
and ecx, 3
je 0x422ca2
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [eax]
cmp bl, 1
sbb eax, 0xffffffff
mov byte [edi + esi], bl
inc esi
cmp ecx, esi
jne 0x422c80
add edi, esi
mov ecx, edx
sub ecx, esi
mov esi, edi
mov ebx, dword [ebp - 0x14]
jmp 0x422ca4
mov esi, edi
jmp 0x422ce9
mov ecx, edx
cmp edx, 4
jb 0x422ce9
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [edi], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [edi + 1], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [edi + 2], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
lea esi, [edi + 4]
mov byte [edi + 3], dl
mov edi, esi
add ecx, 0xfffffffc
jne 0x422cb0
mov byte [esi], 0xa
inc esi
mov dword [ebp - 0x1c], esi
push 0xbe5098bb
push dword [0x44a8d8]
call fcn.0043c0e0
add esp, 8
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x34]
push dword [ecx + 4]
call eax
mov dl, 1
jmp dword [0x444f70]
push dword [ebp - 0x38]
mov esi, edx
call fcn.00408360
mov edx, esi
mov esi, dword [ebp - 0x18]
add esp, 4
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x444f08]
mov eax, dword [edi]
mov dword [ebp - 0x24], eax
xor esi, esi
mov eax, edx
mov edx, dword [ebp - 0x28]
jmp dword [esi*4 + 0x444f48]
add edi, 8
xor ebx, ebx
cmp edi, dword [ebp - 0x14]
setne bl
jmp dword [ebx*4 + 0x444f38]
mov ebx, dword [edi + 4]
mov esi, ebx
shr esi, 0x1c
shl ebx, 4
or ebx, 1
xor esi, edx
mov edx, eax
xor ebx, eax
xor ecx, ecx
or ebx, esi
sete cl
jmp dword [ecx*4 + 0x444f40]
mov ebx, 1
mov eax, edx
mov edx, dword [ebp - 0x28]
jmp dword [ebx*4 + 0x444f48]
mov byte [ebx], 0
push 0
push 0x10
push 0
push esi
call fcn.00425020
add esp, 0x10
mov byte [ebx], 0
push 0
push 0x10
push 0
push esi
call fcn.00425020
add esp, 0x10
jmp dword [0x444f34]
mov dword [ebp - 0x24], 0
xor ebx, ebx
mov edi, dword [ebp - 0x2c]
cmp edi, dword [ebp - 0x14]
setne bl
mov dword [ebp - 0x28], edx
jmp dword [ebx*4 + 0x444f38]
mov edi, dword [ebp - 0xb4]
mov ebx, dword [ebp - 0x28]
mov byte [ebx + edi], 0
push 0x20
call fcn.00408350
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov ecx, eax
push edi
push ebx
call fcn.00424bc0
mov edi, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x28]
mov byte [eax + edi], 0
push 0x20
call fcn.00408350
add esp, 4
mov ebx, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov ecx, eax
push edi
push dword [ebp - 0x28]
call fcn.00424bc0
jmp dword [0x444e84]
mov dword [ebp - 0xd4], ebx
movzx eax, al
xor ebx, ebx
xor edx, edx
jmp dword [eax*4 + 0x444e88]
mov dword [ebp - 0x9c], 0x85707a61
mov dword [ebp - 0x98], 0x7e887881
mov dword [ebp - 0x94], 0x757d6935
mov dword [ebp - 0x90], 0x702f648a
mov dword [ebp - 0x8c], 0x6a656090
mov dword [ebp - 0x88], 0x686b4829
mov dword [ebp - 0x84], 0x9d609865
mov dword [ebp - 0x80], 0x2f9d
mov byte [ebp - 0x7c], 0
mov eax, 0x122ddb7c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esi]
mov edx, eax
or edx, ecx
lea edi, [eax - 0x122ddb00]
and edi, ecx
xor edi, edx
lea ecx, [edi + edi]
not ecx
add ecx, edi
add ecx, 0xd3522fa0
mov edx, ecx
and edx, 0x50
xor ecx, 0xd0
lea ecx, [ecx + edx*2]
inc cl
mov byte [esi], cl
inc esi
dec eax
cmp eax, 0x122ddb5b
jne 0x422ef0
lea eax, [ebp - 0x9c]
mov ecx, dword [ebp - 0xd4]
push eax
call fcn.00424e00
xor ecx, ecx
test eax, eax
setne cl
xor edx, edx
jmp dword [ecx*4 + 0x444e90]
add eax, 8
xor ebx, ebx
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
xor edx, edx
mov dword [ebp - 0x24], 0
jmp dword [eax*4 + 0x444e98]
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x444e98]
mov dword [ebp - 0x48], esi
jmp dword [0x444ea4]
mov eax, ebx
mov ebx, edx
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x24]
mov esi, dword [esi]
mov edi, ebx
not edi
and edi, edx
add edi, edi
mov eax, ebx
xor eax, edx
sub edi, eax
mov eax, edi
sar eax, 3
cmp edx, ecx
je 0x422fe0
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x24], ecx
mov esi, edx
sub esi, ebx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x2c], ebx
cmp esi, edi
jb 0x42307d
jmp 0x423110
mov dword [ebp - 0x10], edx
mov ecx, eax
mov eax, edx
sub eax, ebx
mov dword [ebp - 0x18], eax
sar eax, 3
mov edx, eax
shr edx, 1
add edx, eax
mov dword [ebp - 0xa0], ecx
lea eax, [ecx + 1]
cmp edx, eax
ja 0x423004
mov edx, eax
mov dword [ebp - 0x14], edx
lea eax, [edx*8]
push eax
call fcn.00408350
add esp, 4
test ebx, ebx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x1c], esi
je 0x42305e
mov esi, dword [ebp - 0x10]
cmp ebx, esi
je 0x423052
xor edx, edx
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebx + edx]
mov dword [eax + edx], ecx
mov ecx, dword [ebx + edx + 4]
mov dword [eax + edx + 4], ecx
mov dword [ebx + edx], 0
lea ecx, [ebx + edx]
add ecx, 8
add edx, 8
cmp ecx, esi
jne 0x423030
push ebx
call fcn.00408360
mov eax, dword [ebp - 0x2c]
add esp, 4
mov ecx, dword [ebp - 0x14]
lea ecx, [eax + ecx*8]
mov dword [ebp - 0x24], ecx
add eax, edi
mov dword [ebp - 0x14], eax
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0xa0]
cmp esi, edi
jae 0x423110
lea eax, [ebx + eax*8]
mov ecx, eax
not ecx
mov edx, dword [ebp - 0x10]
and ecx, edx
not edx
and edx, eax
sub edx, ecx
mov eax, dword [ebp - 0x2c]
lea ebx, [eax + esi]
mov dword [ebp - 0x18], esi
add eax, esi
add eax, 8
cmp edx, 8
jle 0x4230c0
push edx
push ebx
push eax
call fcn.004083d0
add esp, 0xc
mov esi, dword [ebp - 0x18]
jmp 0x423110
mov ecx, edx
shr ecx, 2
mov esi, edx
mov edx, ebx
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edx, esi
and edx, 0xfffffffc
add eax, edx
add edx, ebx
mov ecx, esi
shr ecx, 1
and ecx, 1
mov ebx, edx
mov edi, eax
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov ebx, esi
mov ecx, esi
test bl, 1
mov esi, dword [ebp - 0x18]
je 0x423110
mov ebx, ecx
and ebx, 2
movzx ecx, byte [edx + ebx]
mov byte [eax + ebx], cl
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [ebp - 0x2c]
add esi, edi
mov ecx, esi
mov edx, dword [ebp - 0x1c]
call fcn.00425c70
mov edx, edi
mov ebx, dword [ebp - 0x14]
add ebx, 8
mov esi, dword [ebp - 0x48]
jmp dword [0x444ea8]
mov eax, dword [esi]
mov dword [ebp - 0x2c], eax
mov edi, edx
not edi
and edi, ebx
add edi, edi
mov eax, edx
xor eax, ebx
sub edi, eax
mov ecx, edi
sar ecx, 3
cmp ebx, dword [ebp - 0x24]
mov dword [ebp - 0x14], ebx
je 0x423160
mov eax, ebx
sub eax, edx
mov dword [ebp - 0x10], ebx
mov ebx, edx
jmp 0x4231f6
mov eax, ebx
mov esi, edx
sub eax, edx
mov dword [ebp - 0x1c], eax
sar eax, 3
mov edx, eax
shr edx, 1
add edx, eax
mov dword [ebp - 0x18], ecx
lea eax, [ecx + 1]
cmp edx, eax
ja 0x42317e
mov edx, eax
mov dword [ebp - 0x10], edx
lea eax, [edx*8]
push eax
call fcn.00408350
add esp, 4
mov ebx, eax
mov edx, esi
test esi, esi
je 0x4231dd
mov esi, edx
mov edx, dword [ebp - 0x14]
cmp esi, edx
je 0x4231d2
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi + eax]
mov dword [ebx + eax], ecx
mov ecx, dword [esi + eax + 4]
mov dword [ebx + eax + 4], ecx
mov dword [esi + eax], 0
lea ecx, [esi + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x4231b0
push esi
call fcn.00408360
add esp, 4
mov edx, esi
mov eax, dword [ebp - 0x10]
lea eax, [ebx + eax*8]
mov dword [ebp - 0x24], eax
mov eax, ebx
add eax, edi
mov dword [ebp - 0x10], eax
mov esi, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
cmp eax, edi
mov edi, eax
jae 0x423290
lea eax, [edx + ecx*8]
mov ecx, eax
not ecx
mov edx, dword [ebp - 0x14]
and ecx, edx
not edx
and edx, eax
sub edx, ecx
lea ecx, [ebx + edi]
lea eax, [ebx + edi]
add eax, 8
cmp edx, 8
jle 0x423230
push edx
push ecx
push eax
call fcn.004083d0
add esp, 0xc
jmp 0x423290
mov dword [ebp - 0x18], ecx
mov ecx, edx
shr ecx, 2
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x14]
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov eax, edx
and eax, 0xfffffffc
mov edi, dword [ebp - 0x14]
add edi, eax
add eax, dword [ebp - 0x18]
mov ecx, edx
shr ecx, 1
and ecx, 1
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x18]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [ebp - 0x1c]
test dl, 1
je 0x423290
mov ecx, edx
and edx, 2
mov eax, dword [ebp - 0xa0]
movzx ecx, byte [eax + edx]
mov eax, dword [ebp - 0x14]
mov byte [eax + edx], cl
nop
nop
nop
add edi, ebx
mov ecx, edi
mov edx, dword [ebp - 0x2c]
call fcn.00425c70
mov edx, dword [ebp - 0x10]
add edx, 8
jmp 0x422fa0
jmp dword [0x444fe8]
push dword [esp + 0x3c]
call fcn.00408360
add esp, 4
mov eax, dword [esp + 0x58]
and al, 1
add esp, 0xf4
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x84]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x444fe0]
mov dword [esp + 0x84], ecx
mov esi, dword [esp + ecx + 0x90]
mov ebp, 0xfffffffe
nop
nop
nop
nop
cmp word [esi + ebp + 2], 0
lea ebp, [ebp + 2]
jne 0x423620
mov dword [esp + 0x60], ebp
sar ebp, 1
mov eax, dword [esp + 0x50]
lea ecx, [eax + ebp]
mov dword [esp + 0x44], ebp
lea edx, [eax + ebp]
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x423652
mov eax, 0xffffffff
mov dword [esp + 0x40], esi
push eax
call fcn.00408350
add esp, 4
mov esi, eax
mov eax, dword [esp + 0x3c]
movzx ecx, word [eax]
mov ebp, esi
test cx, cx
je 0x423692
mov edx, dword [esp + 0x5c]
mov ebp, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ebp], cx
add ebp, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423680
mov dword [esp + 0x64], esi
mov word [ebp], 0x5c
mov dword [esp + 4], 0x237e218c
mov dword [esp + 8], 0x2785259b
mov dword [esp + 0xc], 0x3b863999
mov dword [esp + 0x10], 0x3f6d3d5c
mov dword [esp + 0x14], 0x33933184
mov dword [esp + 0x18], 0x37933580
mov word [esp + 0x1c], 0x908
lea eax, [esp + 4]
mov byte [eax + 0x1e], 0
mov dword [eax + 0x1a], 0
xor ecx, ecx
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + edi + 4]
mov ebx, ecx
and ebx, 0x10
mov edx, edi
xor edx, 0xe0ccc288
add edx, ebx
mov eax, edx
not eax
or eax, esi
mov ebx, edx
sub ebx, esi
add ebx, eax
not esi
and esi, edx
not ebx
or ebx, esi
add bl, 0x58
mov byte [esp + edi + 4], bl
inc edi
add ecx, 2
cmp edi, 0x1f
jne 0x4236f0
add ebp, 2
mov edi, dword [esp + 0x40]
movzx ecx, word [edi]
test cx, cx
je 0x423752
lea edx, [edi + 2]
nop
nop
nop
nop
nop
nop
mov word [ebp], cx
add ebp, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423740
mov word [ebp], 0
movzx ecx, word [esp + 4]
test cx, cx
mov esi, dword [esp + 0x64]
je 0x423782
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
mov word [ebp], cx
add ebp, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423770
mov word [ebp], 0
lea eax, [esp + 0x4c]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.0043cb50
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x444ff0]
xor ebx, ebx
jmp dword [0x4450b0]
push esi
call fcn.00408360
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x4450b8]
jmp dword [0x444ffc]
mov esi, dword [esp + 0x48]
lea eax, [esi + 1]
push eax
call fcn.00408350
add esp, 4
push 0
push esi
mov esi, eax
push eax
push dword [esp + 0x58]
call fcn.0043cfc0
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x445010]
jmp dword [0x445018]
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x445008]
jmp dword [0x4450e8]
jmp dword [0x445090]
push dword [esp + 0x38]
call fcn.00408360
add esp, 4
push dword [esp + 0x80]
call fcn.00401ba0
add esp, 4
jmp dword [0x445098]
jmp dword [0x4450c0]
xor eax, eax
jmp dword [0x44505c]
jmp dword [0x4450a0]
jmp dword [0x4450f4]
push esi
call fcn.00408360
add esp, 4
nop
push esi
call fcn.00408360
add esp, 4
jmp dword [0x4450f8]
lea eax, [esp + 0x48]
push 0
push eax
push dword [esp + 0x54]
call fcn.0043ced0
add esp, 0xc
lea eax, [esp + 0x48]
push 0
push eax
push dword [esp + 0x54]
call fcn.0043ced0
add esp, 0xc
jmp dword [0x445000]
push ebp
call fcn.00408360
add esp, 4
mov esi, dword [esp + 0x54]
jmp dword [0x445074]
movzx ecx, byte [esp + eax + 4]
lea edx, [eax - 0x14b67e8e]
and edx, ecx
lea esi, [eax + ecx]
add esi, 0xeb498172
add edx, edx
sub esi, edx
mov edx, esi
mov ecx, esi
xor ecx, 0xc5
add ecx, esi
and esi, 0xc5
and edx, 0x3a
sub ecx, edx
add ecx, esi
inc cl
mov byte [esp + eax + 4], cl
inc eax
cmp eax, 0x12
jne case.0x422269.125
movzx ecx, word [edi]
mov eax, ebp
test cx, cx
je 0x423941
lea edx, [edi + 2]
mov eax, ebp
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423930
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x423971
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423960
mov word [eax], 0
mov ecx, dword [esp + 0x108]
push dword [esp + 0x68]
push dword [esp + 0x70]
push ebp
call fcn.004091e0
xor eax, eax
movzx ecx, byte [esp + eax + 4]
lea edx, [eax - 0x14b67e8e]
and edx, ecx
lea esi, [eax + ecx]
add esi, 0xeb498172
add edx, edx
sub esi, edx
mov edx, esi
mov ecx, esi
xor ecx, 0xc5
add ecx, esi
and esi, 0xc5
and edx, 0x3a
sub ecx, edx
add ecx, esi
inc cl
mov byte [esp + eax + 4], cl
inc eax
cmp eax, 0x12
jne 0x42398d
movzx ecx, word [edi]
mov eax, ebp
test cx, cx
je 0x4239f1
lea edx, [edi + 2]
mov eax, ebp
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4239e0
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x423a21
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423a10
mov word [eax], 0
mov ecx, dword [esp + 0x108]
push dword [esp + 0x68]
push dword [esp + 0x70]
push ebp
call fcn.004091e0
mov ebx, eax
xor eax, eax
jmp dword [0x445064]
jmp dword [0x445068]
mov esi, dword [esp + 0x54]
jmp dword [0x445074]
push 0xbe5098bb
push dword [0x44a8d8]
call fcn.0043c0e0
add esp, 8
nop
nop
nop
nop
nop
nop
nop
nop
push 0xbe5098bb
push dword [0x44a8d8]
call fcn.0043c0e0
add esp, 8
jmp dword [0x44507c]
push dword [esp + 0x6c]
call eax
mov eax, dword [case.0x423d64.1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x445028]
jmp dword [0x445098]
mov dword [esp + 0x54], esi
mov dword [esp + 0x80], eax
push eax
call fcn.00401930
add esp, 4
mov dword [esp], eax
mov dword [esp + 4], 0x181deeeb
mov dword [esp + 8], 0xf7f2e4ea
mov dword [esp + 0xc], 0xf40432
mov dword [esp + 0x10], 0xfffafcf2
mov dword [esp + 0x14], 0xd0d0d
mov word [esp + 0x18], 0xf409
mov byte [esp + 0x1a], 0x92
mov word [esp + 0x1b], 0
mov esi, 0xfce7426a
mov ebx, 0x95
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebp, byte [esp + esi + 0x318bd9a]
mov eax, esi
or eax, ebp
mov ecx, ebp
not ecx
or ecx, ebx
and ecx, eax
not ecx
and ecx, esi
mov eax, ecx
or al, 0xfd
inc al
mov edx, ecx
and dl, 0xfd
mul dl
mov edx, eax
mov eax, ebp
add dl, al
mov eax, ecx
shr al, 1
and al, 1
or cl, 2
mul cl
add al, al
sub dl, al
movzx eax, dl
add eax, esi
add al, 0xee
mov byte [esp + esi + 0x318bd9a], al
inc esi
dec ebx
cmp esi, 0xfce74283
jne 0x423b20
lea eax, [esp + 4]
push eax
push dword [esp + 4]
call fcn.00401a70
add esp, 8
mov ecx, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [eax + ecx + 1], 0
lea ecx, [ecx + 1]
jne 0x423b90
mov dword [esp], ecx
mov edx, dword [esp]
and edx, 0xfffffffc
mov ecx, dword [esp]
and ecx, 3
mov ebx, dword [esp]
or ebx, 3
imul ebx, ecx
xor ecx, 3
imul ecx, edx
mov edx, dword [esp]
add ebx, ecx
shr ebx, 2
movzx ecx, byte [eax + edx - 1]
cmp ecx, 0x3d
je 0x423bcf
cmp ecx, 0x2e
jne 0x423bd0
dec ebx
movzx ecx, byte [eax + edx - 2]
cmp ecx, 0x3d
mov dword [esp + 0x70], eax
je 0x423be3
cmp ecx, 0x2e
jne 0x423be4
dec ebx
mov dword [esp + 0x7c], ebx
lea eax, [ebx + 1]
push eax
call fcn.00408350
add esp, 4
mov dword [esp + 0x38], eax
cmp dword [esp], 0
je 0x423cff
xor edi, edi
xor esi, esi
jmp 0x423c29
mov ebp, dword [esp + 0x78]
mov eax, esi
and eax, 4
xor esi, 4
lea esi, [esi + eax*2]
mov edi, ebp
cmp esi, edx
jae 0x423cff
mov ebp, dword [esp + 0x70]
movzx eax, byte [ebp + esi]
push eax
call fcn.00418600
add esp, 4
mov bh, al
movzx eax, byte [ebp + esi + 1]
push eax
call fcn.00418600
mov edx, dword [esp + 4]
add esp, 4
mov bl, al
shl bh, 2
xor al, 0xc0
mov ecx, ebx
or cl, 0x30
and cl, al
shr cl, 4
add cl, bh
lea eax, [edi + 1]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x74], edi
mov byte [eax + edi], cl
lea eax, [esi + 2]
cmp eax, edx
jae 0x423c10
movzx eax, byte [ebp + eax]
push eax
call fcn.00418600
mov edx, dword [esp + 4]
add esp, 4
cmp al, 0x40
mov ebp, dword [esp + 0x78]
je 0x423c14
shl bl, 4
mov ecx, eax
shr cl, 2
and cl, 0xf
or cl, bl
mov edi, dword [esp + 0x74]
lea ebp, [edi + 2]
mov edx, dword [esp + 0x38]
mov byte [edx + edi + 1], cl
mov edx, dword [esp]
lea ecx, [esi + 3]
cmp ecx, edx
jae 0x423c14
mov edx, dword [esp + 0x70]
movzx ecx, byte [edx + ecx]
push ecx
mov ebx, eax
call fcn.00418600
mov edx, dword [esp + 4]
add esp, 4
cmp al, 0x40
je 0x423c14
mov ecx, ebx
shl cl, 6
add al, cl
mov ecx, dword [esp + 0x38]
mov edi, dword [esp + 0x74]
mov byte [ecx + edi + 2], al
add edi, 3
mov ebp, edi
jmp 0x423c14
mov eax, dword [esp + 0x7c]
add eax, 0xfffffffb
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x38]
add eax, 5
mov dword [esp + 0x8c], eax
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
push 0x14e20a34
push dword [0x44a8f0]
call fcn.0043c0e0
add esp, 8
lea ecx, [esp + 0x68]
lea edx, [esp + 0x88]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
mov esi, dword [esp + 0x54]
jmp dword [ecx*4 + 0x445030]
jmp dword [0x445040]
mov eax, dword [esp + 0x60]
add eax, 0x10
cmp dword [esp + 0x44], 0xfffffff8
jge 0x423d89
mov eax, 0xffffffff
push eax
call fcn.00408350
add esp, 4
mov ebp, eax
mov edi, dword [esp + 0x40]
jmp dword [0x445048]
mov dword [esp + 4], 0x4fea491b
mov dword [esp + 8], 0x43104ddc
mov dword [esp + 0xc], 0x47ce41d4
mov byte [esp + 0x10], 0xd0
nop
nop
nop
nop
nop
mov dword [esp + 4], 0x4fea491b
mov dword [esp + 8], 0x43104ddc
mov dword [esp + 0xc], 0x47ce41d4
mov dword [esp + 0x10], 0xbbba45d0
mov word [esp + 0x14], 0
jmp dword [0x445054]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], 0xc0c7c6c5
lea eax, [esp + 4]
mov byte [eax + 6], 0
mov word [eax + 4], 0
mov ecx, 0x59392cb1
mov edx, 0x4e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx - 0x59392cad]
mov esi, edx
xor esi, ecx
and esi, eax
xor esi, ecx
lea eax, [esi + 0x79ee7905]
mov edi, eax
and edi, 0xa
xor eax, 0x8a
lea eax, [eax + edi*2]
add eax, 0xfb
and esi, 1
xor eax, 1
lea eax, [eax + esi*2]
mov byte [esp + ecx - 0x59392cad], al
inc ecx
dec edx
cmp ecx, 0x59392cb8
jne 0x423e20
mov ecx, dword [0x44a8e4]
test ecx, ecx
je 0x423ea0
mov edx, dword [esp + 4]
xor esi, esi
mov eax, dword [0x44a8e8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax + esi*8], 0xb62b8d10
je 0x423e90
inc esi
cmp ecx, esi
jne 0x423e80
jmp 0x423ea0
mov eax, dword [eax + esi*8 + 4]
cmp eax, edx
jne 0x423eb4
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, dword [esp + 0x64]
jmp dword [0x4450b0]
movzx eax, bl
jmp dword [eax*4 + 0x4450b8]
push ebp
push 1
push eax
push dword [0x44a8ec]
call fcn.004390d0
add esp, 0x10
mov esi, dword [esp + 0x64]
jmp dword [0x4450b0]
push edi
call fcn.00408360
add esp, 4
jmp dword [0x4450e8]
push esi
call fcn.00408360
add esp, 4
push esi
call fcn.00408360
add esp, 4
jmp dword [0x4450a8]
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x44]
lea ecx, [edx + eax]
add edx, eax
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x423f20
mov eax, 0xffffffff
push eax
call fcn.00408350
add esp, 4
mov esi, eax
mov eax, dword [esp + 0x3c]
movzx ecx, word [eax]
mov eax, esi
test cx, cx
je 0x423f51
mov edx, dword [esp + 0x5c]
mov eax, esi
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423f40
mov word [eax], 0x5c
mov dword [esp + 4], 0xb7c289ec
mov dword [esp + 8], 0xb3ddb527
mov dword [esp + 0xc], 0xbf2ab1d1
mov dword [esp + 0x10], 0xbbc5bd9c
mov dword [esp + 0x14], 0xa735b924
mov dword [esp + 0x18], 0xa3c3a53a
mov dword [esp + 0x1c], 0xafc3a1cb
mov dword [esp + 0x20], 0xab3eadc8
mov dword [esp + 0x24], 0xd74ca9c5
mov dword [esp + 0x28], 0xd346d5b9
mov dword [esp + 0x2c], 0xdfb0d1bc
mov word [esp + 0x30], 0xdddc
lea ecx, [esp + 4]
mov byte [ecx + 0x30], 0
mov word [ecx + 0x2e], 0
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + edx + 4]
mov ebp, ecx
and ebp, 0x3c
mov ebx, edx
xor ebx, 0x8503ad9e
add ebx, ebp
xor ebx, edi
mov edi, ebx
xor edi, 0x17
and ebx, 0x68
add ebx, ebx
sub ebx, edi
inc bl
mov byte [esp + edx + 4], bl
inc edx
add ecx, 2
cmp edx, 0x31
jne 0x423fd0
add eax, 2
mov edx, dword [esp + 0x40]
movzx ecx, word [edx]
test cx, cx
je 0x424040
add edx, 2
mov edi, dword [esp + 0x60]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424020
jmp 0x424044
mov edi, dword [esp + 0x60]
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x424071
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424060
mov word [eax], 0
jmp dword [0x4450c8]
mov ebx, dword [case.0x422269.158]
add edi, 0x12
cmp dword [esp + 0x44], 0xfffffff7
jge case.0x422269.155
mov edi, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
call fcn.00408350
add esp, 4
jmp ebx
mov dword [esp + 4], 0x59a65b75
mov dword [esp + 8], 0x5dd45fa3
mov dword [esp + 0xc], 0x51ae53a7
mov dword [esp + 0x10], 0x55b057b4
mov word [esp + 0x14], 0x6b54
mov dword [esp + 0x16], 0
mov ecx, 0x413c258f
mov edx, 0x70
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, edx
and edi, 0x42
mov ebp, ecx
and ebp, 4
or ebp, edi
xor ebp, 4
mov edi, ecx
xor edi, 0x46
mov ebx, ecx
or ebx, 0xb9
and ebx, edi
or ebx, ebp
xor bl, byte [esp + ecx - 0x413c258b]
xor bl, 0x46
add bl, 0x35
mov byte [esp + ecx - 0x413c258b], bl
inc ecx
dec edx
cmp ecx, 0x413c25a5
jne 0x4240f0
mov edi, dword [esp + 0x40]
movzx edx, word [edi]
mov ecx, eax
test dx, dx
je 0x424161
add edi, 2
mov ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x424150
mov word [ecx], 0
movzx edx, word [esp + 4]
test dx, dx
je 0x424191
lea edi, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x424180
mov word [ecx], 0
mov dword [esp + 4], 0x7f7e7956
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, edx
xor edi, 0x16
mov ebx, ecx
and ebx, 2
sub ebx, edi
xor bl, byte [esp + edx + 4]
add bl, 0x6e
mov byte [esp + edx + 4], bl
inc edx
add ecx, 2
cmp edx, 4
jne 0x4241b0
push 0
push 0
push 0xc00000
lea ecx, [esp + 0x10]
push ecx
push esi
mov edi, eax
push eax
push dword [esp + 0x120]
call fcn.0041c310
add esp, 0x1c
mov ecx, dword [esp + 0x58]
and cl, 1
or cl, al
mov dword [esp + 0x58], ecx
jmp dword [0x4450e0]
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x44]
lea ecx, [edx + eax]
add edx, eax
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x424230
mov eax, 0xffffffff
push eax
call fcn.00408350
add esp, 4
mov ecx, dword [esp + 0x3c]
movzx ecx, word [ecx]
test cx, cx
je 0x424261
mov edx, dword [esp + 0x5c]
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424250
mov word [eax], 0x5c
mov dword [esp + 4], 0xb7c289ec
mov dword [esp + 8], 0xb3ddb527
mov dword [esp + 0xc], 0xbf2ab1d1
mov dword [esp + 0x10], 0xbbc5bd9c
mov dword [esp + 0x14], 0xa735b924
mov dword [esp + 0x18], 0xa3c3a53a
mov dword [esp + 0x1c], 0xafc3a1cb
mov dword [esp + 0x20], 0xab3eadc8
mov dword [esp + 0x24], 0xd74ca9c5
mov dword [esp + 0x28], 0xd346d5b9
mov dword [esp + 0x2c], 0xdfb0d1bc
mov word [esp + 0x30], 0xdddc
lea ecx, [esp + 4]
mov byte [ecx + 0x30], 0
mov word [ecx + 0x2e], 0
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + edx + 4]
mov edi, ecx
and edi, 0x3c
mov ebx, edx
xor ebx, 0x8503ad9e
add ebx, edi
xor ebx, esi
mov esi, ebx
xor esi, 0x17
and ebx, 0x68
add ebx, ebx
sub ebx, esi
inc bl
mov byte [esp + edx + 4], bl
inc edx
add ecx, 2
cmp edx, 0x31
jne 0x4242e0
add eax, 2
mov edx, dword [esp + 0x40]
movzx ecx, word [edx]
test cx, cx
je 0x424341
add edx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424330
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x424371
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424360
mov word [eax], 0
jmp case.0x422269.151
mov eax, dword [esp + 0x48]
mov byte [esi + eax], 0
push esi
call fcn.00401000
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esi + eax], 0
push esi
call fcn.00401000
add esp, 4
jmp dword [0x445020]
int3
xor eax, eax
jmp dword [0x445208]
lea esi, [esp + 0x6c]
jmp dword [0x44510c]
push 0
push esi
push dword [esp + 0x18]
call fcn.0043ced0
add esp, 0xc
nop
nop
nop
push 0
push esi
push dword [esp + 0x18]
call fcn.0043ced0
add esp, 0xc
jmp dword [0x445114]
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
jmp dword [eax*4 + 0x445118]
mov dword [esp + 0x70], ebp
mov esi, dword [esp + 0x6c]
lea eax, [esi + 1]
push eax
call fcn.00408350
add esp, 4
push 0
push esi
mov dword [esp + 0x70], eax
push eax
push dword [esp + 0x1c]
call fcn.0043cfc0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
jmp dword [eax*4 + 0x445120]
jmp dword [0x4451f0]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], 0xc0c7c6c5
mov word [esp + 0x20], 0
mov byte [esp + 0x22], 0
mov ecx, 0x59392cb1
mov edx, 0x4e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + ecx - 0x59392c95]
mov esi, edx
xor esi, ecx
and esi, edi
xor esi, ecx
lea edi, [esi + 0x79ee7905]
mov ebx, edi
and ebx, 0xa
xor edi, 0x8a
lea edi, [edi + ebx*2]
add edi, 0xfb
and esi, 1
xor edi, 1
lea ebx, [edi + esi*2]
mov byte [esp + ecx - 0x59392c95], bl
inc ecx
dec edx
cmp ecx, 0x59392cb8
jne 0x4245f0
mov ecx, dword [0x44a8e4]
test ecx, ecx
je 0x42466c
mov edx, dword [esp + 0x1c]
xor esi, esi
mov edi, dword [0x44a8e8]
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x424660
inc esi
cmp ecx, esi
jne 0x424650
jmp 0x42466c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x424b9d
mov eax, dword [esp + 4]
and al, 1
jmp dword [0x445208]
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
mov byte [ebp + eax], 0
mov dword [esp + 4], 0
nop
nop
nop
mov dword [esp + 0x1c], 0xaea6a8ae
mov dword [esp + 0x20], 0xb2bb8cba
mov word [esp + 0x24], 0xcbed
mov byte [esp + 0x26], 0x2a
lea eax, [esp + 0x27]
mov byte [eax + 2], 0
mov word [eax], 0
mov eax, 0xb57c06cc
mov ecx, 0xa83f933
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0x4a83f950]
mov edi, ecx
and edi, 0x8804839
mov edx, eax
and edx, 0x80100646
or edx, edi
xor edx, esi
xor edx, 0x3dec48b9
lea ebx, [edx*2 - 0x16d843fa]
add edx, 0x7493de03
and ebx, 2
mov esi, ebx
and esi, edx
or ebx, edx
xor ebx, 1
add ebx, esi
mov byte [esp + eax + 0x4a83f950], bl
inc eax
dec ecx
cmp eax, 0xb57c06da
jne 0x4246d0
movzx ecx, byte [esp + 0x1c]
test cl, cl
je 0x424760
lea eax, [esp + 0x1c]
mov edi, ebp
jmp 0x424737
movzx ecx, byte [eax]
test cl, cl
je 0x424772
movzx edx, byte [ebp]
test dl, dl
je 0x424770
inc ebp
inc eax
lea esi, [edi + 1]
cmp dl, cl
je 0x42474c
mov edi, esi
mov ebp, esi
je 0x424730
lea eax, [esp + 0x1c]
jmp 0x424730
mov edi, ebp
jmp 0x424772
xor edi, edi
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x445128]
lea ebp, [edi + 0xa]
movzx eax, byte [edi + 0xa]
xor ebx, ebx
test al, al
je 0x4247a2
mov ecx, ebp
nop
cmp al, 0x22
je 0x4247a0
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x424790
jmp 0x4247a2
mov ebx, ecx
mov esi, ebx
sub esi, ebp
xor eax, eax
cmp esi, 5
setb al
jmp dword [eax*4 + 0x445130]
xor eax, eax
cmp byte [ebx - 1], 0x74
setne al
jmp dword [eax*4 + 0x445138]
xor eax, eax
cmp byte [ebx - 2], 0x78
setne al
jmp dword [eax*4 + 0x445140]
xor eax, eax
cmp byte [ebx - 3], 0x74
setne al
jmp dword [eax*4 + 0x445158]
xor eax, eax
cmp byte [ebx - 4], 0x2e
setne al
jmp dword [eax*4 + 0x445160]
mov eax, esi
inc eax
mov dword [esp], eax
lea eax, [esi + esi + 2]
jns 0x424806
mov eax, 0xffffffff
push eax
call fcn.00408350
add esp, 4
push ebx
push ebp
push dword [esp + 8]
mov dword [esp + 0x14], eax
push eax
call fcn.0040ad60
add esp, 0x10
lea eax, [esp + 0xc]
push 0x60
push 3
push 0x120089
push eax
push dword [esp + 0x18]
call fcn.0043cb50
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x445168]
mov ebp, ebx
jmp dword [0x4451e8]
mov dword [esp + 0x64], ebx
jmp dword [0x445170]
lea eax, [esp + 0x18]
push 0
push eax
push dword [esp + 0x14]
call fcn.0043ced0
add esp, 0xc
nop
nop
nop
lea eax, [esp + 0x18]
push 0
push eax
push dword [esp + 0x14]
call fcn.0043ced0
add esp, 0xc
jmp dword [0x44517c]
mov ebx, dword [esp + 0x18]
test eax, eax
setns al
cmp ebx, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x445180]
push ebx
call fcn.00408350
add esp, 4
push 0
push ebx
mov dword [esp + 0x68], eax
push eax
push dword [esp + 0x18]
call fcn.0043cfc0
add esp, 0x10
mov edx, eax
not edx
shr edx, 0x1f
xor eax, eax
mov ecx, dword [esp + 8]
jmp dword [edx*4 + 0x445188]
add ecx, 2
mov dword [esp], eax
test dx, dx
je 0x424900
mov ebx, eax
movzx edx, word [ecx]
mov eax, ecx
cmp dx, 0x5c
je 0x4248e0
mov eax, ebx
jmp 0x4248e0
mov ecx, dword [esp + 8]
xor eax, eax
jmp dword [0x445198]
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x4451a0]
xor ebx, ebx
xor eax, eax
jmp 0x424934
jmp dword [0x4451b0]
mov ebx, dword [esp]
sub ebx, dword [esp + 8]
sar ebx, 1
inc ebx
mov eax, esi
sub eax, ebx
add eax, 0x1b
push eax
call fcn.00408350
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp], ebx
sub esi, ebx
mov dword [esp + 0x1c], 0xe8eae8cb
mov dword [esp + 0x20], 0xd7c9dbe6
mov dword [esp + 0x24], 0xd6e883d8
mov dword [esp + 0x28], 0x9cd3c4d4
mov dword [esp + 0x2c], 0xc2d6dafe
mov dword [esp + 0x30], 0x80dad8d8
mov word [esp + 0x34], 0x8281
mov byte [esp + 0x36], 0xb2
mov word [esp + 0x37], 0
xor eax, eax
mov ebx, dword [esp + 0x64]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, 0x64
sub ecx, eax
mov edx, ecx
and edx, 0x6c
or ecx, 0x93
add ecx, eax
add ecx, 0x1c
or ecx, edx
xor cl, byte [esp + eax + 0x1c]
xor cl, 0x6c
add cl, 0x79
mov byte [esp + eax + 0x1c], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0x1d
jb 0x4249a0
add ebp, dword [esp]
movzx ecx, byte [esp + 0x1c]
mov eax, dword [esp + 0x14]
test cl, cl
je 0x4249fb
lea edx, [esp + 0x1d]
mov eax, dword [esp + 0x14]
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x4249f0
mov byte [eax], 0
test esi, esi
je 0x424a31
mov edx, dword [esp]
add edx, edi
mov ecx, ebx
sub ecx, edx
add ecx, 0xfffffff5
mov edi, esi
and edi, 3
je 0x424a35
xor edx, edx
movzx ebx, byte [ebp]
cmp bl, 1
sbb ebp, 0xffffffff
mov byte [eax + edx], bl
inc edx
cmp edi, edx
jne 0x424a17
add eax, edx
sub esi, edx
mov edx, eax
jmp 0x424a35
mov edx, eax
jmp 0x424a77
cmp ecx, 3
jb 0x424a77
movzx ecx, byte [ebp]
cmp cl, 1
sbb ebp, 0xffffffff
mov byte [eax], cl
movzx ecx, byte [ebp]
cmp cl, 1
sbb ebp, 0xffffffff
mov byte [eax + 1], cl
movzx ecx, byte [ebp]
cmp cl, 1
sbb ebp, 0xffffffff
mov byte [eax + 2], cl
movzx ecx, byte [ebp]
cmp cl, 1
sbb ebp, 0xffffffff
lea edx, [eax + 4]
mov byte [eax + 3], cl
mov eax, edx
add esi, 0xfffffffc
jne 0x424a3a
mov byte [edx], 0
mov ecx, dword [esp + 0xcc]
push dword [esp + 0x18]
push dword [esp + 0x64]
mov esi, dword [esp + 0x1c]
push esi
call fcn.00409390
mov ecx, dword [esp + 4]
and cl, 1
or cl, al
mov dword [esp + 4], ecx
jmp dword [0x4451b8]
push esi
call fcn.00408360
add esp, 4
nop
jmp dword [0x4451c8]
jmp dword [0x4451d0]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1c], 0xc0c7c6c5
lea ecx, [esp + 0x27]
mov byte [ecx - 5], 0
mov word [ecx - 7], 0
mov ecx, 0x59392cb1
mov edx, 0x4e
nop
nop
nop
nop
movzx edi, byte [esp + ecx - 0x59392c95]
mov esi, edx
xor esi, ecx
and esi, edi
xor esi, ecx
lea edi, [esi + 0x79ee7905]
mov ebx, edi
and ebx, 0xa
xor edi, 0x8a
lea edi, [edi + ebx*2]
add edi, 0xfb
and esi, 1
xor edi, 1
lea ebx, [edi + esi*2]
mov byte [esp + ecx - 0x59392c95], bl
inc ecx
dec edx
cmp ecx, 0x59392cb8
jne 0x424af0
mov ecx, dword [0x44a8e4]
test ecx, ecx
mov ebx, dword [esp + 0x64]
je 0x424b68
mov edx, dword [esp + 0x1c]
xor esi, esi
mov edi, dword [0x44a8e8]
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x424b60
inc esi
cmp ecx, esi
jne 0x424b50
jmp 0x424b68
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x424b83
mov ebp, ebx
jmp dword [0x4451e8]
push eax
push 1
push ecx
push dword [0x44a8ec]
call fcn.004390d0
add esp, 0x10
mov ebp, ebx
jmp dword [0x4451e8]
push eax
push 1
push ecx
push dword [0x44a8ec]
call fcn.004390d0
add esp, 0x10
mov eax, dword [esp + 4]
and al, 1
jmp dword [0x445208]
push ss
inc edx
add byte [edx], cl
sbb eax, dword [edx]
cmp dword [edi], edx
inc edx
add byte [ecx + 0x17], bh
inc edx
add byte [ebx + 0x17], cl
inc edx
add byte [ecx], bl
sbb eax, dword [edx]
int 0x17
inc edx
add al, ah
pop ss
inc edx
add byte [eax + 0x17], ah
inc edx
add dh, dh
pop ss
inc edx
add dh, dh
pop ss
inc edx
add dh, dh
pop ss
inc edx
add byte [eax], ch
sbb byte [edx], al
not byte [edi]
inc edx
add byte [eax + 0x17], ah
inc edx
add byte [esi + 0x18], al
inc edx
add byte [esi + 0x18], al
inc edx
add byte [esi + 0x18], al
inc edx
add byte [eax + 0x18], bh
inc edx
add byte [esi + 0x18], al
inc edx
add byte [eax + 0x17], ah
inc edx
add byte [esi + 0x5004218], al
sbb al, byte [edx]
xlatb
sbb al, byte [edx]
sti
sbb al, byte [edx]
sbb al, byte [edx]
xlatb
sbb al, byte [edx]
sbb al, byte [edx]
invalid
sbb al, byte [edx]
or ebx, dword [edx]
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [edi + 0x2a00421c], al
sbb eax, dword [edx]
mov cl, 0x1b
inc edx
add byte [edi + 0x1c], al
inc edx
add byte [edx], ch
sbb eax, dword [edx]
dec edi
sbb al, 66
add byte [eax + 0x1c], bl
inc edx
add byte [eax + 0x1e], dh
inc edx
add bh, cl
sbb al, 0x42
add byte [eax + 0x1e], dh
inc edx
add byte [0x3b004220], ch
and byte [edx], al
pop ebx
and byte [edx], al
pop esp
and dword [edx], eax
js 0x444e77
inc edx
add byte [ecx + 0x22], dl
inc edx
add byte [ebx + 0x70004221], cl
and al, byte [edx]
jle 0x444e88
inc edx
add byte [0xa5004223], bl
and al, byte [edx]
or byte [ebx], ah
inc edx
add ah, bl
and al, byte [edx]
daa
add byte [edi], ah
inc edx
add dh, bl
sub eax, 0x2dde0042
inc edx
add byte [edx + 0x2e], bh
inc edx
add dl, ah
and al, byte [edx]
mov gs, word [esi]
inc edx
add dl, ah
loop 0x444eac
inc edx
add byte [esi - 0x1dffbdd2], cl
and al, byte [edx]
dec ebx
das
inc edx
add dl, ah
and al, byte [edx]
sub dword [edi], 0x42
add byte [eax], dh
xor dword [edx], eax
mov word [edi], gs
inc edx
add byte [eax + 0x2f], dh
inc edx
add byte [eax], dh
xor dword [edx], eax
call 0x84490d7
and eax, dword [edx]
push cs
xor byte [ecx], dh
inc edx
add al, ch
and al, byte [edx]
or byte [ebx], ah
inc edx
add byte [esi], cl
and eax, dword [edx]
sbb eax, 0xf0004223
and eax, dword [edx]
lock and eax, dword [edx]
and eax, dword [edx]
lock and eax, dword [edx]
clc
and eax, dword [edx]
and al, 0x24
inc edx
add byte [edx], dh
and al, 0x42
add byte [0x7d004224], dl
and eax, 0x27050042
inc edx
add byte [edx + 0x2d004228], bh
daa
inc edx
add byte [esi + 0x69004228], ah
daa
inc edx
add byte [ecx + 0x28], ch
inc edx
add cl, cl
daa
inc edx
add byte [ecx + 0x28], ch
sub byte [edx], al
add ebp, dword [edx]
inc edx
add byte [ecx + 0x28], ch
inc edx
add byte [esi], ch
sub al, byte [edx]
sbb ebp, dword [edx]
inc edx
add byte [ecx + 0x2a], bl
inc edx
add byte [ebx - 0x3bffbdd5], al
sub byte [edx], al
add ebp, dword [edx]
inc edx
add byte [ecx + 0x28], ch
inc edx
add byte [esi], ch
sub al, byte [edx]
sbb ebp, dword [edx]
inc edx
add byte [ecx + 0x2a], bl
inc edx
add byte [ebx - 0x3bffbdd5], al
sub al, byte [edx]
mov al, 0x2a
inc edx
add byte [esi], bl
sub eax, dword [edx]
cwde
sub eax, 766115906
inc edx
add byte [eax - 0x3dffbdd3], bl
sub eax, 0x2b8c0042
inc edx
add byte [ebp + 0x2d], ah
inc edx
add byte [edi + 0x4000422d], al
sub eax, 0x2b8c0042
inc edx
add byte [ebx + 0x2d], dl
inc edx
add byte [ebp - 0x53ffbdd5], bl
sub eax, dword [edx]
sub byte [edx + eax*2], ch
add byte [esp + ebp], dh
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ebp + 0x100422b], bl
add byte [eax], al
add byte [esi], dl
sub eax, 0x2a1b0042
inc edx
add byte [eax + 0x28], bh
inc edx
add byte [eax - 0x5fffbdd8], ah
sub byte [edx], al
mov al, byte [0xa6004228]
sub byte [edx], al
mov al, byte [0xaf004228]
sub byte [edx], al
mov edx, 0x8a004228
and eax, 695664706
inc edx
add byte [edi - 0x54ffbdd7], al
and eax, 0x25b40042
inc edx
add al, dl
and eax, 0x25d00042
inc edx
add al, ah
and eax, 0x10042
add byte [eax], al
add dword [eax], eax
add byte [eax], al
xchg dword [ecx], ebp
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ebp - 0x65ffbdd7], cl
sub dword [edx], eax
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
mov dword [0x1004243], eax
add byte [eax], al
add al, al
xor eax, 0x36090042
inc edx
add dh, al
xor eax, 0x35d20042
inc edx
add byte [ebx - 0x2fffbdc9], ch
aaa
inc edx
add byte [eax - 0x4cffbdc8], ah
cmp byte [edx], al
and byte [eax], bh
inc edx
add byte [eax - 0xfffbdc8], ah
cmp eax, 0x37e00042
inc edx
add byte [edx + 0x1000423a], dh
cmp byte [edx], al
mov word [ebx + 0x42], es
add byte [ebx + 67], bh
inc edx
add byte [edx + 0x7b00423a], ah
inc ebx
inc edx
add byte [edx - 0x47ffbdc6], dh
cmp al, byte [edx]
cmp byte ss:[edx], al
jo 4477043
inc edx
add byte [eax + 0x3d], dh
inc edx
add byte [eax + 0x3d], dh
inc edx
add byte [esi + 0x3d], dh
inc edx
add byte [eax + 0x3d], dh
inc edx
add al, al
cmp eax, 0x3d9e0042
inc edx
add al, al
cmp eax, 0x38660042
inc edx
add al, ah
cmp byte [edx], al
mov edi, dword [ecx]
inc edx
add al, ah
cmp byte [edx], al
inc ebp
cmp al, byte [edx]
int3
add byte [eax + 0x3a], dh
inc edx
add byte [eax + 0x3a], dh
inc edx
add byte [ecx - 0x5fffbdc6], cl
cmp al, byte [edx]
mov al, byte [0xa000423a]
cmp al, byte [edx]
cmp byte ss:[edx], al
cmp al, 56
inc edx
add byte [eax + 0x38], cl
inc edx
add byte [esi + 0x38], ch
inc edx
add al, dh
cmp eax, 0x3ee80042
inc edx
add bh, bl
inc edx
add al, dh
cmp eax, 0x3edf0042
inc edx
add byte [ebx - 0x55ffbdc9], dh
inc edx
add al, dh
xor eax, 0x38600042
inc edx
add byte [eax], al
aas
inc edx
add byte [eax], dl
inc edx
inc edx
add byte [eax + eax*2 + 0x42], bh
add byte [eax], dl
inc edx
inc edx
add byte [eax - 0x5fffbdc0], ah
inc eax
inc edx
add byte [eax - 0x54ffbdc0], ah
inc eax
inc edx
add al, dl
inc edx
add byte [eax], dh
cmp byte [edx], al
cmp byte [eax], 0x42
add al, dh
xor eax, 0x38860042
inc edx
add byte [eax - 0xfffbdc8], dl
xor eax, 0x38900042
inc edx
add byte [eax*2 + 0x45240042], al
inc edx
add byte [esi], ch
inc ebp
inc edx
add byte [eax + 0x45], al
inc edx
add byte [eax + 0x45], al
inc edx
add byte [ebp + 0x45], dl
inc edx
add dl, al
inc ebp
inc edx
add byte [ecx + 0x45], ch
inc edx
add byte [ebp + 0x78004245], ah
inc esi
inc edx
add byte [eax - 0x5affbdb9], al
inc ebp
inc edx
add byte [ebp - 0x6fffbdb9], dh
inc edi
inc edx
add byte [eax - 0x3affbdba], dl
inc edi
inc edx
add byte [eax - 0x3affbdba], dl
inc edi
inc edx
add byte [eax - 0x2affbdba], dl
inc edi
inc edx
add byte [eax + 0x1004246], dl
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add ch, dl
inc edi
inc edx
add byte [ecx], al
add byte [eax], al
add ch, ah
inc edi
inc edx
add byte [eax - 0xaffbdba], dl
inc edi
inc edx
add byte [eax + 0x48004246], dl
dec eax
inc edx
add byte [eax + 0x48], dl
inc edx
add byte [eax + 0x48], dh
inc edx
add byte [edx + 0x48], bl
inc edx
add byte [eax + 0x48], dh
inc edx
add byte [ecx - 0x37ffbdb8], cl
dec edx
inc edx
add byte [edi - 0x49ffbdb8], ah
dec edx
inc edx
add bl, ch
dec eax
inc edx
add bl, ch
dec eax
inc edx
add bl, ch
dec eax
inc edx
add byte [ecx + ecx*2], cl
inc edx
add bl, ch
dec eax
inc edx
add byte [edx], bl
dec ecx
inc edx
add byte [eax], ah
dec ecx
inc edx
add byte [eax], ah
dec ecx
inc edx
add byte [eax], ah
dec ecx
inc edx
add byte [esi], ah
dec ecx
inc edx
add byte [eax], ah
dec ecx
inc edx
add byte [esi - 0x4fffbdb6], ah
dec edx
inc edx
add byte [eax - 0x4fffbdb6], dh
dec edx
inc edx
add byte [esi - 0x4fffbdb6], dh
dec edx
inc edx
add byte [edx + ecx*2 + 0x4ac80042], bh
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ebx + 0x7000424b], bh
dec ebx
inc edx
add byte [eax - 0x54ffbdba], dl
inc ebp
inc edx
add byte [edi - 0x3fffbdbb], dh
inc ebp
inc edx
add al, al
inc ebp
inc edx
add dl, al
inc ebp
inc edx
add al, al
inc ebp
inc edx
add byte [eax*2 + 0x45190042], cl
inc edx
add bh, ch
mov dword [esi], eax
ljmp 0x468c