Function at 0x422117
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x450
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x50], 0xbb36bd33
mov dword [esp + 0x54], 0xb757b945
mov dword [esp + 0x58], 0xb380b541
mov dword [esp + 0x5c], 0x4fc6b14d
mov dword [esp + 0x60], 0x4b4a4db1
mov word [esp + 0x64], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0x15
ja 0x4209b3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x50]
add eax, 0x724e5ef2
xor eax, ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
add al, 0xb2
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x50], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0x16
jb 0x420980
lea edi, [esp + 0x50]
lea ecx, [esp + 0x40]
push edi
call fcn.0043af80
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x446e58]
lea ecx, [esp + 0x40]
push 0x410
call fcn.0043b1c0
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x446e60]
lea ecx, [esp + 0x40]
call fcn.0043b330
mov eax, ebx
add esp, 0x450
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x50], 0x25b1401
mov dword [esp + 0x54], 0x1c026104
mov dword [esp + 0x58], 0x801036d
mov dword [esp + 0x5c], 0x671e0669
mov dword [esp + 0x60], 0x4737266
mov dword [esp + 0x64], 0x1f707671
mov dword [esp + 0x68], 0x1a1d7e1a
mov dword [esp + 0x6c], 0x267f1873
mov dword [esp + 0x70], 0x46545652
mov dword [esp + 0x74], 0x2e4b6955
mov dword [esp + 0x78], 0xb3624d4d
mov dword [esp + 0x7c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2f
ja 0x420a9e
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x50]
add eax, 0xf1496ac2
xor eax, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0xa2
mov ecx, dword [esp]
mov byte [esp + ecx + 0x50], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x30
jb 0x420a70
lea eax, [esp + 0x34]
lea ecx, [esp + 0x40]
push 0
push 0x2b
push edi
push eax
call fcn.0043b7a0
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
xor eax, eax
cmp ebp, esi
sete al
mov dword [esp + 0x2c], esi
jmp dword [eax*4 + 0x446e68]
mov eax, esi
sub eax, ebp
sar eax, 2
imul eax, eax, 0x421
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0x24], 0
xor ecx, ecx
cmp ebp, esi
setne cl
mov dword [esp + 0x20], eax
mov dword [esp + 0xc], eax
jmp dword [ecx*4 + 0x446e70]
add ebp, 4
xor eax, eax
mov esi, dword [esp + 0x2c]
cmp ebp, esi
setne al
jmp dword [eax*4 + 0x446e70]
mov esi, dword [ebp]
push 0x400
push 0
push edi
call fcn.00409ad0
add esp, 0xc
lea eax, [esp + 4]
lea ecx, [esp + 0x40]
push eax
push 0x400
push edi
push esi
call fcn.0043b640
cmp eax, 0xc0000000
setae al
cmp dword [esp + 4], 0
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x446e80]
mov eax, 1
jmp dword [eax*4 + 0x446e88]
xor eax, eax
jmp dword [eax*4 + 0x446e88]
jmp dword [0x446e9c]
mov byte [esp + 0x44f], 0
movzx eax, byte [esp + 0x50]
xor esi, esi
test al, al
je 0x420bb1
mov ecx, edi
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x420baf
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x420ba0
jmp 0x420bb1
mov esi, ecx
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x446ea0]
movzx eax, byte [esi + 1]
inc esi
xor ebx, ebx
test al, al
je 0x420be1
mov ecx, esi
nop
nop
nop
nop
cmp al, 0x2e
je 0x420bdf
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x420bd0
jmp 0x420be1
mov ebx, ecx
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x446ea8]
mov edx, ebx
sub edx, esi
mov eax, edx
and eax, 3
mov edi, edx
or edi, 3
imul edi, eax
xor eax, 3
mov ecx, edx
and ecx, 0xfffffffc
imul ecx, eax
add edi, ecx
shr edi, 2
movzx eax, byte [ebx - 1]
cmp eax, 0x3d
je 0x420c1e
cmp eax, 0x2e
jne 0x420c1f
dec edi
mov eax, edx
xor eax, 2
mov ecx, edx
and ecx, 0xfffffffd
add ecx, ecx
sub ecx, eax
movzx eax, byte [esi + ecx]
cmp eax, 0x3d
mov dword [esp + 0x14], edx
je 0x420c3f
cmp eax, 0x2e
jne 0x420c46
mov dword [esp + 0x28], ebp
dec edi
jmp 0x420c4a
mov dword [esp + 0x28], ebp
mov dword [esp + 0x4c], edi
lea eax, [edi + 1]
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], esi
cmp ebx, esi
je 0x420d60
xor ebp, ebp
mov edi, 2
jmp 0x420c92
mov ebp, ebx
lea eax, [edi + 4]
add edi, 2
cmp edi, edx
mov edi, eax
jae 0x420d60
mov esi, dword [esp + 0x18]
movzx eax, byte [esi + edi - 2]
push eax
call fcn.00415c50
add esp, 4
mov ebx, eax
movzx eax, byte [esi + edi - 1]
push eax
call fcn.00415c50
add esp, 4
shl bl, 2
mov edx, eax
shr dl, 4
and dl, 3
or dl, bl
lea ebx, [ebp + 1]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x30], ebp
mov byte [ecx + ebp], dl
mov edx, dword [esp + 0x14]
cmp edi, edx
jae 0x420c80
mov byte [esp + 0xb], al
mov eax, dword [esp + 0x18]
movzx eax, byte [eax + edi]
push eax
call fcn.00415c50
mov edx, dword [esp + 0x18]
add esp, 4
cmp al, 0x40
mov ebp, ebx
je 0x420c82
movzx ecx, byte [esp + 0xb]
shl cl, 4
mov ebx, eax
shr al, 2
and al, 0xf
or al, cl
mov esi, dword [esp + 0x30]
lea ebp, [esi + 2]
mov ecx, dword [esp + 0x10]
mov byte [ecx + esi + 1], al
lea eax, [edi + 1]
cmp eax, edx
jae 0x420c82
mov eax, dword [esp + 0x18]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.00415c50
mov edx, dword [esp + 0x18]
add esp, 4
cmp al, 0x40
je 0x420c82
shl bl, 6
mov ecx, eax
and cl, bl
add cl, cl
xor bl, al
add bl, cl
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x30]
mov byte [eax + ebp + 2], bl
add ebp, 3
jmp 0x420c82
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x10]
mov byte [esi + eax], 0
push esi
call fcn.00402970
add esp, 4
mov ebx, eax
jmp dword [0x446eb0]
push esi
call fcn.00409a60
add esp, 4
push ebx
call fcn.00403420
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
lea edi, [esp + 0x50]
mov ebp, dword [esp + 0x28]
jmp dword [ecx*4 + 0x446eb8]
jmp 0x420e69
mov dword [esp + 0x1c], 0x5bfacef3
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 3
ja 0x420e00
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x1c]
add ecx, 0xcd9b8f9f
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 7
mov edx, dword [esp]
mov byte [esp + edx + 0x1c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 4
jb 0x420dd0
lea ecx, [esp + 0x1c]
push ecx
push eax
call fcn.004031e0
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x446ec0]
mov edx, dword [esp + 0xc]
jmp 0x420e43
movzx ecx, byte [eax]
test cl, cl
mov edx, dword [esp + 0xc]
je 0x420e3b
inc eax
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x420e30
mov word [edx], 0x203a
add edx, 2
movzx eax, byte [esp + 0x50]
test al, al
je 0x420e5b
lea ecx, [esp + 0x51]
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x420e50
mov byte [edx], 0xa
inc edx
mov dword [esp + 0xc], edx
mov al, 1
mov dword [esp + 0x24], eax
push ebx
call fcn.004039d0
add esp, 4
add ebp, 4
xor eax, eax
mov esi, dword [esp + 0x2c]
cmp ebp, esi
setne al
jmp dword [eax*4 + 0x446e70]
mov ebx, dword [esp + 0x24]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x446e78]
mov esi, dword [esp + 0x20]
jmp dword [0x446ed8]
and bl, 1
jmp dword [0x446ee4]
xor ebx, ebx
jmp dword [0x446ee4]
mov edi, dword [esp + 0xc]
mov byte [edi], 0
mov esi, dword [esp + 0x20]
sub edi, esi
jmp dword [0x446ec8]
mov dword [esp + 0x50], 0x41444b7b
mov dword [esp + 0x54], 0x3d51544f
mov dword [esp + 0x58], 0xbeba444b
mov dword [esp + 0x5c], 0xb4c49c79
mov dword [esp + 0x60], 0xa973beab
mov byte [esp + 0x64], 0xb1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 0x50], 0x41444b7b
mov dword [esp + 0x54], 0x3d51544f
mov dword [esp + 0x58], 0xbeba444b
mov dword [esp + 0x5c], 0xb4c49c79
mov dword [esp + 0x60], 0xa973beab
mov dword [esp + 0x64], 0xb7bdbcb1
mov dword [esp + 0x68], 0xd5d075b1
mov word [esp + 0x6c], 0x5fd2
mov dword [esp + 0x6e], 0
mov byte [esp + 0x72], 0
jmp dword [0x446ed4]
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x22
mov ecx, dword [esp + 0x464]
ja 0x420f9e
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x50]
add eax, 0x61810276
xor eax, edx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0x34
mov edx, dword [esp]
mov byte [esp + edx + 0x50], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x23
jb 0x420f70
lea eax, [esp + 0x50]
push edi
push esi
push eax
call fcn.0040a340
mov ebx, eax
jmp dword [0x446ed8]
push esi
call fcn.00409a60
add esp, 4
and bl, 1
jmp dword [0x446ee4]
mov eax, dword [esp + 0x34]
test eax, eax
je case.0x420be8.15
cmp eax, dword [esp + 0x38]
je case.0x420be8.15
push eax
call fcn.00409a60
add esp, 4
jmp case.0x420be8.15
jmp dword [0x446eec]
mov eax, dword [esp + 0x34]
test eax, eax
je 0x420fe0
cmp eax, dword [esp + 0x38]
je 0x420fe0
push eax
call fcn.00409a60
add esp, 4
jmp 0x420fe0
xor ebx, ebx
test eax, eax
sete bl
xor edx, edx
jmp dword [ebx*4 + 0x446f60]
jmp dword [edx*4 + 0x446f00]
mov dword [esi], 0x28752679
mov dword [esi + 4], 0x2c6c2a6c
mov dword [esi + 8], 0x307c2e64
mov dword [esi + 0xc], 0x34613265
mov dword [esi + 0x10], 0x386b366c
mov dword [esi + 0x14], 0x3c7a3a74
mov dword [esi + 0x18], 0x773e7e
mov dword [esi + 0x1c], 0x44d0248
mov dword [esi + 0x20], 0x85b0640
mov dword [esi + 0x24], 0xc440a5a
mov dword [esi + 0x28], 0x105b0e4b
mov dword [esi + 0x2c], 0x14521246
mov dword [esi + 0x30], 0x18521647
mov dword [esi + 0x34], 0x1c4d1a45
mov dword [esi + 0x38], 0x60b31ebc
mov dword [esi + 0x3c], 0x64c662d7
mov dword [esi + 0x40], 0x68346639
mov dword [esi + 0x44], 0x6cce6add
mov dword [esi + 0x48], 0x70c26ecc
mov word [esi + 0x4c], 0x7271
mov word [esi + 0x52], 0
mov dword [esi + 0x4e], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x53
ja 0x42118a
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [esi + edx]
add eax, 0x4b47785
xor eax, edx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0x60
mov edx, dword [ebp - 0x10]
mov byte [esi + edx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x54
jb 0x421160
push 0
push 0
push ecx
mov ebx, dword [ebp - 0x14]
push ebx
push esi
call fcn.0043f6d0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x446f08]
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebx]
call fcn.0043fb00
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x446f10]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
lea eax, [ecx*2 + 2]
inc ecx
jns 0x4211e2
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov dword [edi], 0x67f46991
mov dword [edi + 4], 0x63ee65eb
mov dword [edi + 8], 0x1f8a6181
mov dword [edi + 0xc], 0x1bea1d88
mov dword [edi + 0x10], 0x179a19f9
mov dword [edi + 0x14], 0x1312158c
mov dword [edi + 0x18], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x1b
ja 0x42125c
nop
nop
nop
nop
nop
nop
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edi + ecx]
add edx, 0xf7a38eb6
xor edx, ecx
mov dword [ebp - 0x28], edx
mov edx, dword [ebp - 0x28]
add dl, 0x22
mov ecx, dword [ebp - 0x10]
mov byte [edi + ecx], dl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x1c
jb 0x421230
push dword [ebp - 0x30]
push eax
push 0
push edi
push dword [ebx]
mov dword [ebp - 0x40], eax
call fcn.00440110
mov ecx, dword [ebp - 0x40]
add esp, 0x14
shr eax, 0x1f
mov dword [ebp - 0x20], ecx
jmp dword [eax*4 + 0x446f18]
mov dword [ebp - 0x20], 0
jmp dword [0x446f20]
push ecx
call fcn.00409a60
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebx, dword [ebx]
mov dword [ebp - 0x28], 0xf8fbfafd
mov word [ebp - 0x24], 0
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x18]
cmp eax, 5
ja 0x4212ec
nop
nop
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0x28]
add eax, 0xf9ff0a83
xor eax, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
add al, 0x81
mov ecx, dword [ebp - 0x18]
mov byte [ebp + ecx - 0x28], al
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, 6
jb 0x4212c0
mov ecx, dword [0x44ab98]
test ecx, ecx
je case.default.0x421369
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x40], eax
xor eax, eax
mov edx, dword [0x44ab9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edx + eax*8], 0x625b6034
je 0x42133b
inc eax
cmp ecx, eax
jne 0x421310
jmp case.default.0x421369
mov eax, 4
xor ebx, ebx
cmp eax, 4
setb bl
mov ecx, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x446f58]
mov eax, dword [edx + eax*8 + 4]
cmp eax, dword [ebp - 0x40]
je case.default.0x421369
push ebx
push 1
push dword [0x44aba0]
push eax
call fcn.0043cdc0
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
cmp dword [ebp - 0x20], 0
setne al
jmp dword [eax*4 + 0x446f28]
mov ebx, dword [ebp - 0x1c]
jmp dword [0x446f30]
mov eax, 2
xor ebx, ebx
cmp eax, 4
setb bl
mov ecx, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x446f58]
mov eax, 2
jmp dword [0x446f54]
xor ebx, ebx
cmp eax, 4
setb bl
mov ecx, 0x20119
jmp dword [ebx*4 + 0x446f58]
push ebx
call fcn.0043ed10
add esp, 4
push ebx
call fcn.0043ed10
add esp, 4
jmp dword [0x446f38]
cmp dword [ebx], 1
sete cl
and al, cl
movzx ecx, al
xor edx, edx
xor eax, eax
jmp dword [ecx*4 + 0x446f40]
xor eax, eax
mov ecx, dword [ebp - 0x20]
test ecx, ecx
sete al
mov dword [ebp - 0x14], 0
mov ebx, dword [ebp - 0x3c]
jmp dword [eax*4 + 0x446f68]
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx], 0
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x421430
cmp eax, 0xffffffd9
mov esi, dword [ebp - 0x48]
jge 0x42144a
mov eax, 0xffffffff
jmp 0x42144d
add eax, 0x26
push eax
call fcn.00409a50
add esp, 4
mov edi, eax
mov edx, dword [ebp - 0x34]
mov dword [edx], 0x3e5a3c51
mov dword [edx + 4], 0x32ad30a0
mov dword [edx + 8], 0x36ac3453
mov dword [edx + 0xc], 0x2a4728b0
mov dword [edx + 0x10], 0x2ebe2c48
mov dword [edx + 0x14], 0x224520bf
mov dword [edx + 0x18], 0x26be24be
mov dword [edx + 0x1c], 0x5acd5807
mov dword [edx + 0x20], 0x5e395c39
mov word [edx + 0x24], 0x5051
mov dword [edx + 0x26], 0
mov word [edx + 0x2a], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x2b
ja 0x4214ea
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
add eax, 0xce3a02a4
xor eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0x67
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x2c
jb 0x4214c0
mov eax, dword [ebp - 0x20]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x421511
mov eax, dword [ebp - 0x20]
lea edx, [eax + 2]
mov eax, edi
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x421500
mov word [eax], 0
mov edx, dword [ebp - 0x34]
movzx ecx, word [edx]
test cx, cx
je 0x421541
add edx, 2
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 0x421530
mov word [eax], 0
jmp dword [0x446f70]
push dword [ebp - 0x20]
call fcn.00409a60
add esp, 4
xor eax, eax
cmp word [edi], 0x5b
sete al
jmp dword [eax*4 + 0x446f78]
xor eax, eax
cmp word [edi], 0x5b
sete al
jmp dword [eax*4 + 0x446f78]
mov edx, dword [ebp - 0x38]
mov dword [edx], 0xc61fc418
mov dword [edx + 4], 0xc262c063
mov dword [edx + 8], 0xce5bcc54
mov dword [edx + 0xc], 0xca60c861
mov dword [edx + 0x10], 0xb611b464
mov dword [edx + 0x14], 0xb226b014
mov dword [edx + 0x18], 0xbe13bc25
mov dword [edx + 0x1c], 0xba16b816
mov dword [edx + 0x20], 0xa63ba46d
mov dword [edx + 0x24], 0xa20fa00b
mov dword [edx + 0x28], 0xaca3
mov byte [edx + 0x2c], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x2c
ja 0x421624
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
lea edx, [eax + ecx]
add edx, 0xa6de822f
add eax, 0xa6de822f
and eax, ecx
mov ecx, edx
xor ecx, eax
add ecx, eax
not eax
and eax, edx
mov edx, dword [ebp - 0x38]
add eax, eax
sub eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0xc
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x2d
jb 0x4215e0
push 0
push edx
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0x60
push 3
push 0x120089
push esi
mov dword [ebp - 0x34], edi
push edi
call fcn.0043ef30
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x446f80]
push 0
mov edi, dword [ebp - 0x44]
push edi
push dword [esi]
call fcn.0043f2b0
add esp, 0xc
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x446f88]
mov esi, dword [edi]
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
push 0
push esi
mov esi, dword [ebp - 0x48]
mov dword [ebp - 0x40], eax
push eax
push dword [esi]
call fcn.0043f3a0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x446f90]
mov esi, dword [edi]
mov edi, dword [ebp - 0x40]
mov byte [edi + esi], 0
push 0x20
call fcn.00409a50
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 - 0x60], eax
mov ecx, eax
push esi
push edi
call fcn.00424080
movzx eax, al
jmp dword [eax*4 + 0x446f98]
mov esi, dword [ebp - 0x6c]
mov edi, dword [ebp - 0x60]
jmp dword [0x446fa0]
mov dword [esi], 0x1e0f17f8
mov dword [esi + 4], 0x31f0118
mov dword [esi + 8], 0x1e0cf6dc
mov dword [esi + 0xc], 0xe9da0511
mov dword [esi + 0x10], 0x714190b
mov dword [esi + 0x14], 0x111ef1c0
mov dword [esi + 0x18], 0x60f010c
mov word [esi + 0x1c], 0xb804
mov dword [esi + 0x1e], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x21
ja 0x42177a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [esi + ecx]
add eax, 0x32177181
xor eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0xda
mov ecx, dword [ebp - 0x10]
mov byte [esi + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x22
jb 0x421750
mov ecx, edi
push esi
call fcn.00424270
jmp case.0x421649.8
mov ecx, edi
push esi
call fcn.00424270
jmp dword [0x446fac]
mov dword [esi], 0x1e0f17f8
mov dword [esi + 4], 0x31f0118
mov dword [esi + 8], 0x1e0cf6dc
mov dword [esi + 0xc], 0xe9da0511
mov dword [esi + 0x10], 0x714190b
mov dword [esi + 0x14], 0x111ef1c0
mov dword [esi + 0x18], 0x60f010c
mov word [esi + 0x1c], 0xb804
mov dword [esi + 0x1e], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x21
ja 0x421790
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [esi + ecx]
add eax, 0x32177181
xor eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0xda
mov ecx, dword [ebp - 0x10]
mov byte [esi + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x22
jb 0x4217f0
jmp 0x421790
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x446fb0]
mov esi, dword [ebp - 0x48]
jmp dword [0x446ff0]
mov edi, dword [ebp - 0x60]
mov ecx, edi
call fcn.004243d0
push edi
call fcn.00409a60
add esp, 4
jmp dword [0x446ff8]
jmp dword [0x446fc4]
mov ecx, dword [eax + 8]
mov eax, dword [case.0x421649.21]
nop
nop
jmp eax
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x446fd8]
not eax
mov ebx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x30]
mov dword [esi + edi + 4], eax
add edx, 8
mov dword [ebx + 4], edx
mov ecx, dword [ecx + 4]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x446fd8]
mov dword [ebp - 0x38], ecx
mov eax, dword [ecx]
mov dword [ebp - 0x14], eax
mov esi, dword [ebx]
mov edx, dword [ebx + 4]
mov edi, edx
sub edi, esi
cmp edx, dword [ebx + 8]
mov dword [ebp - 0x1c], edi
jne 0x421954
mov dword [ebp - 0x2c], edx
mov ecx, edi
sar ecx, 3
lea eax, [ecx + 1]
mov edi, ecx
shr edi, 1
add edi, ecx
cmp edi, eax
ja 0x4218ca
mov edi, eax
mov eax, edi
and eax, 8
mov ecx, edi
or ecx, 8
imul ecx, eax
xor eax, 8
mov edx, edi
and edx, 0xfffffff7
imul edx, eax
add ecx, edx
push ecx
call fcn.00409a50
add esp, 4
mov dword [ebp - 0x30], eax
test esi, esi
je 0x42193e
mov dword [ebp - 0x20], edi
mov edx, dword [ebp - 0x2c]
cmp esi, edx
mov edi, dword [ebp - 0x30]
je 0x421932
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi + eax]
mov dword [edi + eax], ecx
mov ecx, dword [esi + eax + 4]
mov dword [edi + eax + 4], ecx
mov dword [esi + eax], 0
lea ecx, [esi + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x421910
push esi
call fcn.00409a60
add esp, 4
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x30]
mov dword [ebx], esi
mov ecx, dword [ebp - 0x1c]
lea edx, [esi + ecx]
mov dword [ebx + 4], edx
lea eax, [esi + edi*8]
mov edi, ecx
mov dword [ebx + 8], eax
mov dword [ebp - 0x2c], edx
mov dword [esi + edi], 0
mov dword [ebp - 0x30], esi
mov dword [esi + edi + 4], 0
mov ebx, 0xffffffff
xor eax, eax
mov ecx, dword [ebp - 0x14]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
cmp byte [ecx + ebx + 1], 0
lea ebx, [ebx + 1]
lea eax, [eax + 1]
jne 0x421980
lea eax, [ebx + 1]
mov dword [ebp - 0x20], eax
push eax
call fcn.00409a50
add esp, 4
mov ecx, eax
mov eax, dword [ebp - 0x30]
mov dword [eax + edi], ecx
mov eax, ecx
mov ecx, dword [ebp - 0x20]
shr ecx, 2
mov edx, dword [ebp - 0x14]
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov ecx, dword [ebp - 0x20]
mov edx, ecx
and edx, 0xfffffffc
add eax, edx
mov edi, eax
add edx, dword [ebp - 0x14]
shr ecx, 1
and ecx, 1
mov eax, edx
mov dword [ebp - 0x44], edi
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
test bl, 1
jne 0x4219f4
mov ecx, dword [ebp - 0x20]
and ecx, 2
movzx eax, byte [edx + ecx]
mov edx, dword [ebp - 0x44]
mov byte [edx + ecx], al
test ebx, ebx
je 0x421a9f
cmp ebx, 1
jne 0x421a0f
mov eax, 0xffffffff
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
test bl, 1
je 0x421870
jmp 0x421a76
mov dword [ebp - 0x20], ebx
and esi, 0xfffffffe
mov eax, 0xffffffff
mov ebx, dword [ebp - 0x14]
nop
nop
nop
mov ecx, eax
shr ecx, 8
movzx edx, byte [ebx]
mov edi, eax
and edi, edx
add eax, edx
add edi, edi
sub eax, edi
movzx eax, al
xor ecx, dword [eax*4 + 0x4425c0]
mov eax, ecx
movzx edx, byte [ebx + 1]
mov edi, ecx
and edi, edx
add ecx, edx
add edi, edi
sub ecx, edi
shr eax, 8
movzx ecx, cl
xor eax, dword [ecx*4 + 0x4425c0]
add ebx, 2
add esi, 0xfffffffe
jne 0x421a20
mov dword [ebp - 0x14], ebx
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x20]
test bl, 1
je 0x421870
mov ecx, eax
shr ecx, 8
mov edx, dword [ebp - 0x14]
movzx edx, byte [edx]
mov esi, eax
and esi, edx
add eax, edx
mov edx, dword [ebp - 0x2c]
add esi, esi
sub eax, esi
movzx eax, al
xor ecx, dword [eax*4 + 0x4425c0]
mov eax, ecx
jmp 0x421870
xor eax, eax
mov ebx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
jmp 0x421878
jmp dword [0x446ff8]
push dword [ebp - 0x40]
call fcn.00409a60
add esp, 4
mov eax, dword [esi]
mov dword [ebp - 0x28], 0xf8fbfafd
mov word [ebp - 0x24], 0
mov dword [ebp - 0x18], 0
mov ecx, dword [ebp - 0x18]
cmp ecx, 5
ja 0x421b1e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x18]
movzx edx, byte [ebp + edx - 0x28]
add ecx, 0xf9ff0a83
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0x81
mov edx, dword [ebp - 0x18]
mov byte [ebp + edx - 0x28], cl
inc dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
cmp ecx, 6
jb 0x421af0
mov ecx, dword [0x44ab98]
test ecx, ecx
je case.0x421649.0
mov edx, dword [ebp - 0x28]
xor esi, esi
mov edi, dword [0x44ab9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x421b50
inc esi
cmp ecx, esi
jne 0x421b40
jmp case.0x421649.0
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x421b8c
jmp dword [0x447000]
push dword [ebp - 0x34]
call fcn.00409a60
add esp, 4
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
xor edx, edx
cmp ecx, eax
sete dl
mov edi, dword [ebp - 0x50]
jmp dword [edx*4 + 0x447008]
mov dword [ebp - 0x14], 0
jmp dword [0x447100]
push eax
push 1
push dword [0x44aba0]
push ecx
call fcn.0043cdc0
add esp, 0x10
jmp dword [0x447000]
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
xor edx, edx
cmp ecx, eax
sete dl
mov edi, dword [ebp - 0x50]
jmp dword [edx*4 + 0x447008]
sub eax, ecx
sar eax, 3
mov ecx, eax
and ecx, 0xfffffbde
mov edx, eax
and edx, 0x421
or eax, 0x421
imul eax, edx
xor edx, 0x421
imul edx, ecx
add eax, edx
push eax
call fcn.00409a50
add esp, 4
mov dword [ebp - 0x2c], eax
mov eax, dword [0x44ab94]
mov dword [edi], 0x5b2e5905
mov dword [edi + 4], 0x573555c3
mov dword [edi + 8], 0x53c65131
mov dword [edi + 0xc], 0x4fde4d0d
mov dword [edi + 0x10], 0x4b3649d8
mov dword [edi + 0x14], 0x47ca4525
mov dword [edi + 0x18], 0x431f4121
mov dword [edi + 0x1c], 0x7f0d7d18
mov dword [edi + 0x20], 0x7be779f4
mov dword [edi + 0x24], 0x77e37515
mov dword [edi + 0x28], 0x73e67114
mov dword [edi + 0x2c], 0x6f0d6dfb
mov dword [edi + 0x30], 0x6bfe6909
mov dword [edi + 0x34], 0x67e86532
mov dword [edi + 0x38], 0x63fc61fc
mov dword [edi + 0x3c], 0x9d9c
mov byte [edi + 0x40], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x40
ja 0x421cac
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [edi + edx]
add ecx, 0xe01f23c4
xor ecx, edx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x28]
add cl, 0x64
mov edx, dword [ebp - 0x10]
mov byte [edi + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x41
jb 0x421c80
mov esi, dword [ebp - 0x58]
push esi
push 0
push 0
push 0x1e
push edi
push 0
call eax
mov esi, dword [esi]
test esi, esi
jns 0x421cc8
mov eax, 0xffffffff
jmp 0x421ccb
lea eax, [esi + esi]
push eax
call fcn.00409a50
add esp, 4
mov dword [ebp - 0x38], eax
mov eax, dword [0x44ab94]
mov edx, dword [ebp - 0x4c]
mov dword [edx], 0x418cbf9b
mov dword [edx + 4], 0x45a743ad
mov dword [edx + 8], 0x49a447a7
mov dword [edx + 0xc], 0x4dbc4b8b
mov dword [edx + 0x10], 0x51944fbe
mov dword [edx + 0x14], 0x55a053b3
mov dword [edx + 0x18], 0x597d57b7
mov dword [edx + 0x1c], 0x5d8f5b86
mov dword [edx + 0x20], 0x61855faa
mov dword [edx + 0x24], 0x65896383
mov dword [edx + 0x28], 0x698467ba
mov dword [edx + 0x2c], 0x6d8f6b85
mov dword [edx + 0x30], 0x719c6f8f
mov dword [edx + 0x34], 0x7582735c
mov dword [edx + 0x38], 0x799e7792
mov word [edx + 0x3c], 0x7b7a
mov dword [edx + 0x3e], 0
mov word [edx + 0x42], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x43
ja 0x421da5
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x4c]
movzx edx, byte [edi + edx]
add ecx, 0x5426e7e
xor ecx, edx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x28]
add cl, 0x40
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x4c]
mov byte [edi + edx], cl
mov edx, dword [ebp - 0x4c]
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x44
jb 0x421d70
push dword [ebp - 0x58]
push esi
mov edi, dword [ebp - 0x38]
push edi
push 0x1e
push edx
push 0
call eax
push 0x60
push 3
push 0x120089
mov esi, dword [ebp - 0x5c]
push esi
push edi
call fcn.0043ef30
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447010]
xor eax, eax
mov esi, dword [ebp - 0x2c]
mov edi, esi
jmp dword [0x4470d8]
mov dword [ebp - 0x1c], edi
push dword [ebp - 0x38]
mov edi, esi
mov esi, eax
call fcn.00409a60
add esp, 4
mov eax, esi
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x4470e0]
mov byte [edi], 0
mov edx, dword [ebp - 0x78]
mov dword [edx], 0x64636214
mov dword [edx + 4], 0x607e7178
mov dword [edx + 8], 0x67696974
mov dword [edx + 0xc], 0x91b792a
mov dword [edx + 0x10], 0x7c501704
mov dword [edx + 0x14], 0x1e021912
mov dword [edx + 0x18], 0x10175812
mov dword [edx + 0x1c], 0xb615
mov byte [edx + 0x20], 0
sub edi, esi
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x20
ja 0x421e8a
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
add eax, 0x31d942b3
xor eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0x9a
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x21
jb 0x421e60
mov ecx, dword [ebp + 8]
push edi
push esi
push edx
call fcn.0040a340
mov dword [ebp - 0x14], eax
jmp dword [0x4470e8]
push esi
call fcn.00409a60
add esp, 4
mov eax, dword [ebp - 0x14]
jmp dword [0x4470f4]
push 0
mov edi, dword [ebp - 0x74]
push edi
push dword [esi]
call fcn.0043f2b0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], ecx
jmp dword [eax*4 + 0x447018]
mov esi, dword [edi]
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
push 0
push esi
mov esi, dword [ebp - 0x5c]
mov dword [ebp - 0x50], eax
push eax
push dword [esi]
call fcn.0043f3a0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], ecx
jmp dword [eax*4 + 0x447020]
mov esi, dword [edi]
mov edi, dword [ebp - 0x50]
mov byte [edi + esi], 0
push 0x20
call fcn.00409a50
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 - 0x44], eax
mov ecx, eax
push esi
push edi
call fcn.00424080
movzx eax, al
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], ecx
jmp dword [eax*4 + 0x447028]
mov edx, dword [ebp - 0x68]
mov dword [edx], 0x56455974
mov dword [edx + 4], 0x5945574c
mov dword [edx + 8], 0x46506e00
mov dword [edx + 0xc], 0x630e5343
mov dword [edx + 0x10], 0x4d585745
mov dword [edx + 0x14], 0x30360974
mov dword [edx + 0x18], 0x3e2e2f37
mov dword [edx + 0x1c], 0x26222f00
mov word [edx + 0x20], 0x4826
mov dword [edx + 0x22], 0
mov word [edx + 0x26], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x27
ja 0x421ffa
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
add eax, 0x2906d1ac
xor eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add al, 0x7b
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x28
jb 0x421fd0
mov ecx, dword [ebp - 0x44]
push edx
call fcn.00424270
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0x14], 0
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp dword [ecx*4 + 0x447030]
mov eax, dword [case.0x421dcf.6]
mov ebx, dword [ebp - 0x3c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [case.0x422017.36]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov esi, dword [ebp - 0x5c]
jmp dword [0x4470c8]
mov edi, dword [ebp - 0x44]
mov ecx, edi
call fcn.004243d0
push edi
call fcn.00409a60
add esp, 4
jmp dword [0x4470d0]
jmp dword [0x4470d0]
push dword [ebp - 0x50]
call fcn.00409a60
add esp, 4
mov eax, dword [esi]
mov dword [ebp - 0x28], 0xf8fbfafd
mov word [ebp - 0x24], 0
mov dword [ebp - 0x18], 0
mov ecx, dword [ebp - 0x18]
cmp ecx, 5
ja 0x4220ce
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x18]
movzx edx, byte [ebp + edx - 0x28]
add ecx, 0xf9ff0a83
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0x81
mov edx, dword [ebp - 0x18]
mov byte [ebp + edx - 0x28], cl
inc dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
cmp ecx, 6
jb 0x4220a0
mov ecx, dword [0x44ab98]
test ecx, ecx
je 0x422108
mov edx, dword [ebp - 0x28]
xor esi, esi
mov edi, dword [0x44ab9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x422100
inc esi
cmp ecx, esi
jne 0x4220f0
jmp 0x422108
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x422151
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
jmp dword [0x4470d8]
mov dword [ebp - 0x14], eax
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x4470e0]
jmp dword [0x4470e8]
mov eax, dword [ebp - 0x14]
jmp dword [0x4470f4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x4470f8]
and al, 1
mov dword [ebp - 0x14], eax
jmp dword [0x447100]
push eax
push 1
push dword [0x44aba0]
push ecx
call fcn.0043cdc0
add esp, 0x10
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
jmp dword [0x4470d8]
add eax, 8
mov dword [ebp - 0x14], 0
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
mov dword [ebp - 0x1c], edx
jmp dword [eax*4 + 0x447038]
jmp dword [0x44704c]
cmp dword [esi + 0x18], 3
mov ebx, 0
jne 0x422190
mov ebx, dword [esi + 0x10]
jmp 0x422190
mov edx, dword [esi]
test edx, edx
setne al
test ebx, ebx
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x447050]
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x447038]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x34], esi
mov eax, ebx
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x42220b
sub ecx, ebx
inc ecx
shr ecx, 1
mov dword [ebp - 0x58], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409a50
add esp, 4
mov edi, eax
movsx ecx, byte [ebx]
xor edx, edx
test ecx, ecx
setne dl
mov dword [ebp - 0x48], eax
jmp dword [edx*4 + 0x447058]
inc ebx
mov byte [edi], dl
inc edi
movsx ecx, byte [ebx]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x447058]
lea edx, [ecx - 0x30]
cmp edx, 0xa
jb 0x422242
mov edx, 0xffffffff
or ecx, 0x20
lea esi, [ecx - 0x61]
cmp esi, 6
jae case.default.0x42225d
add ecx, 0xffffffa9
mov edx, ecx
movsx ecx, byte [ebx + 1]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x447060]
lea eax, [ecx - 0x30]
cmp eax, 0xa
jb 0x422271
mov eax, 0xffffffff
or ecx, 0x20
lea esi, [ecx - 0x61]
cmp esi, 6
jae case.default.0x422296
add ecx, 0xffffffa9
mov eax, ecx
shl edx, 4
or edx, eax
add ebx, 2
mov byte [edi], dl
inc edi
movsx ecx, byte [ebx]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x447058]
mov byte [edi], 0
push 0
push 0x10
push 0
push dword [ebp - 0x30]
call fcn.00424470
add esp, 0x10
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor esi, esi
xor edx, edx
mov dword [ebp - 0x4c], eax
cmp ecx, eax
setne dl
mov eax, dword [case.0x422017.19]
jmp dword [edx*4 + 0x447068]
mov esi, dword [ecx]
xor edx, edx
jmp dword [edx*4 + 0x447088]
add ecx, 8
xor edx, edx
cmp ecx, dword [ebp - 0x4c]
setne dl
jmp dword [edx*4 + 0x447068]
jmp eax
mov edi, dword [ecx + 4]
mov edx, edi
shr edx, 0x1c
shl edi, 4
or edi, 1
xor edx, dword [ebp - 0x20]
xor edi, dword [ebp - 0x30]
xor ebx, ebx
or edi, edx
sete bl
jmp dword [ebx*4 + 0x447080]
mov edx, 1
jmp dword [edx*4 + 0x447088]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x447090]
mov esi, dword [ebp - 0x34]
jmp dword [0x4470a0]
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x58]
mov dword [ecx], eax
mov eax, dword [ebp - 0x48]
mov dword [ecx + 4], eax
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
cmp byte [esi + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x4223ab
mov ebx, dword [ebp - 0x70]
mov dword [ebx], eax
mov dword [ebx + 4], esi
mov edi, dword [ebp - 0x54]
mov dword [edi], 0
mov dword [edi + 4], 0
push 0x6c625980
push dword [0x44aba4]
call fcn.0043e4e0
add esp, 8
push edi
push 1
push 0
push 0
push ebx
push 0
push dword [ebp - 0x64]
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x447098]
mov esi, dword [ebp - 0x34]
jmp dword [0x4470a0]
movzx eax, byte [esi]
test al, al
je 0x4223dd
inc esi
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x1c]
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [esi]
inc esi
test al, al
jne 0x4223d0
jmp 0x4223e3
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x1c]
mov word [edx], 0x203a
mov eax, edx
add eax, 2
mov esi, dword [ecx]
test esi, esi
je 0x42241b
mov ecx, dword [ecx + 4]
mov edi, esi
and edi, 3
je 0x42241f
xor ebx, ebx
nop
movzx edx, byte [ecx]
cmp dl, 1
sbb ecx, 0xffffffff
mov byte [eax + ebx], dl
inc ebx
cmp edi, ebx
jne 0x422400
add eax, ebx
mov edx, esi
sub edx, ebx
mov edi, eax
jmp 0x422421
mov edi, eax
jmp 0x422469
mov edx, esi
cmp esi, 4
jb 0x422469
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 1], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 2], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
lea edi, [eax + 4]
mov byte [eax + 3], bl
mov eax, edi
add edx, 0xfffffffc
jne 0x422430
mov byte [edi], 0xa
inc edi
mov dword [ebp - 0x1c], edi
push 0xe050b307
push dword [0x44ab8c]
call fcn.0043e4e0
add esp, 8
mov ecx, dword [ebp - 0x54]
push dword [ecx + 4]
call eax
mov al, 1
mov dword [ebp - 0x14], eax
mov esi, dword [ebp - 0x34]
jmp dword [0x4470a0]
push dword [ebp - 0x48]
call fcn.00409a60
add esp, 4
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x447038]
mov esi, dword [ebx]
test esi, esi
je 0x422508
mov edi, dword [ebx + 4]
cmp esi, edi
je 0x422508
mov ebx, esi
jmp 0x4224d7
add ebx, 8
cmp ebx, edi
je 0x4224e8
mov eax, dword [ebx]
test eax, eax
je 0x4224d0
push eax
call fcn.00409a60
add esp, 4
jmp 0x4224d0
push esi
call fcn.00409a60
add esp, 4
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
jmp dword [0x447108]
mov esi, dword [ebx]
test esi, esi
je case.0x421dcf.60
mov edi, dword [ebx + 4]
cmp esi, edi
je case.0x421dcf.60
mov ebx, esi
jmp 0x422527
add ebx, 8
cmp ebx, edi
je 0x422538
mov eax, dword [ebx]
test eax, eax
je 0x422520
push eax
call fcn.00409a60
add esp, 4
jmp 0x422520
push esi
call fcn.00409a60
add esp, 4
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
jmp case.0x421dcf.60
mov eax, dword [ebp - 0x14]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp dword [0x447124]
mov dword [esp + 0xa8], ecx
mov esi, dword [esp + ecx + 0x94]
mov edi, 0xfffffffe
nop
nop
nop
nop
cmp word [esi + edi + 2], 0
lea edi, [edi + 2]
jne 0x4229a0
mov edx, edi
sar edx, 1
mov eax, dword [esp + 0x8c]
lea ecx, [edx + eax]
mov dword [esp + 0x70], edx
add edx, eax
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x4229d2
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
movzx ecx, word [ebp]
mov dword [esp + 0x74], eax
test cx, cx
je 0x422a11
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0x74]
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 0x422a00
mov word [eax], 0x5c
mov dword [esp + 0xc], 0xfc29e207
mov dword [esp + 0x10], 0xf804fe0e
mov dword [esp + 0x14], 0xf401fa18
mov dword [esp + 0x18], 0xf01cf6d7
mov dword [esp + 0x1c], 0x8c6ef27f
mov dword [esp + 0x20], 0x88768e03
mov dword [esp + 0x24], 0x8a8b
add eax, 2
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1b
ja 0x422a90
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
add ecx, 0x6a83482e
xor ecx, edx
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x40]
add cl, 0x33
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1c
jb 0x422a60
movzx ecx, word [esi]
test cx, cx
je 0x422ab1
lea edx, [esi + 2]
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422aa0
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x422ae1
lea edx, [esp + 0xe]
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 0x422ad0
mov word [eax], 0
lea eax, [esp + 0x88]
push 0x60
push 3
push 0x120089
push eax
push dword [esp + 0x84]
call fcn.0043ef30
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447130]
adc dword [edx], eax
and byte [ebx], dl
inc edx
add byte [eax - 0x31ffbdee], ah
adc dword [edx], eax
mov al, byte [0x80004212]
adc al, byte [edx]
lea edx, [edx]
inc edx
add byte [eax + 0x70004212], ah
adc eax, dword [edx]
adc byte [ebx], 0x42
add cl, cl
adc eax, dword [edx]
rcl byte [ebx], 0x42
add al, bl
adc eax, dword [edx]
rcl byte [ebx], 0x42
add byte [ebx - 1610595821], ch
adc eax, dword [edx]
mov al, byte [0xa0004213]
adc eax, dword [edx]
mov al, byte [0xab004213]
adc eax, dword [edx]
mov al, 0x10
inc edx
add byte [eax - 0x11ffbdf0], ah
adc eax, dword [edx]
mov al, 0x10
inc edx
add byte [ecx], cl
adc al, 0x42
add byte [ebp + 0x25], bl
inc edx
add byte [ebp + edx + 0x42], cl
add byte [edi + 0x15], ah
inc edx
add byte [esi], ch
push ss
inc edx
add byte [edi + 0x15], dh
inc edx
add byte [eax + 0x1b], bl
sbb eax, dword [edx]
push eax
push ss
sbb eax, dword [edx]
push eax
push ss
inc edx
add bl, al
sbb al, byte [edx]
insb byte es:[edi], dx
push ss
inc edx
add byte [edx - 0x65ffbde6], dh
push ss
inc edx
add byte [0xec004218], ch
push ss
inc edx
add byte [esi - 0x7ffbde9], bl
push ss
inc edx
add byte [esi + 0x1f004217], bl
sbb byte [edx], al
sub eax, 0x50004218
sbb byte [edx], al
push eax
sbb byte [edx], al
push eax
sbb byte [edx], al
push eax
sbb byte [edx], al
push esi
sbb byte [edx], al
pushal
sbb byte [edx], al
pushal
sbb byte [edx], al
pushal
sbb byte [edx], al
bound ebx, qword [eax]
inc edx
add byte [0x96004218], ch
sbb byte [edx], al
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
sub eax, 0x1004218
add byte [eax], al
add byte [esi], dh
sbb byte [edx], al
mov dl, 0x1a
inc edx
add byte [eax - 0x3cffbde6], bh
sbb al, byte [edx]
pop esi
sbb eax, dword [edx]
movsb byte es:[edi], byte [esi]
sbb eax, dword [edx]
mov edx, 0x7f00421b
sbb eax, dword [edx]
salc
sbb eax, 514850882
inc edx
add byte [ebp + 0x20], dh
inc edx
add cl, bl
push ds
inc edx
add byte [eax + 0x42], ah
add byte [edi + ebx], dl
inc edx
add byte [edx], dh
and byte [edx], al
jae 0x44704d
inc edx
add byte [esi], bl
and byte [edx], al
jb 0x447057
inc edx
add byte [esi], bl
and byte [edx], al
xchg esi, eax
and dword [edx], eax
xchg esi, eax
and dword [edx], eax
xchg esi, eax
and dword [edx], eax
xchg esi, eax
and dword [edx], eax
cmpsb byte [esi], byte es:[edi]
and dword [edx], eax
mov esi, 0xd1004221
and dword [edx], eax
popfd
and al, byte [edx]
xor eax, 0x20004222
and al, byte [edx]
and al, byte fs:[edx]
xor byte [ebx], ah
inc edx
add byte [eax], al
and eax, dword [edx]
add byte [ebx], ah
inc edx
add byte [eax], al
and eax, dword [edx]
add byte [ebx], ah
inc edx
add byte [edx], al
and eax, dword [edx]
and al, 0x23
add byte [ebp + 0x35004222], bl
and al, byte [edx]
and byte [edx], ah
inc edx
add byte [edx + 0x42], ah
add byte [eax], dh
and eax, dword [edx]
add byte [ebx], ah
inc edx
add byte [eax], al
and eax, dword [edx]
add byte [ebx], ah
inc edx
add byte [eax], al
and eax, dword [edx]
add ah, byte [ebx]
inc edx
add byte [ebx], ah
inc edx
add bh, dl
and al, byte [edx]
xor byte [ebx], ah
inc edx
add dl, ah
and al, byte [edx]
and eax, dword ds:[edx]
inc edi
and eax, dword [edx]
mov dl, 0x23
inc edx
add byte [ebx - 0x66ffbddd], bh
and al, 0x42
add byte [esi + 0x30004221], bh
and byte [edx], al
xor byte [eax], ah
inc edx
add byte [edx], dh
and byte [edx], al
xor byte [eax], ah
inc edx
add byte [eax + 0x20], al
inc edx
add byte [eax + 0x20], al
inc edx
add byte [edx + 0x20], al
inc edx
add byte [eax + 0x20], al
inc edx
add byte [ebx + 0x20], cl
inc edx
add byte [eax + 0x42], ah
add byte [edx + 0x20], ch
inc edx
add byte [ebp + 0x20], dh
inc edx
add bl, ah
sbb eax, 0x21170042
inc edx
add byte [esi], ah
and dword [edx], eax
or ebx, dword [esi]
inc edx
add byte [esi + 0x2c00421e], bl
and dword [edx], eax
xor eax, 0x40004221
and dword [edx], eax
inc esi
and dword [edx], eax
inc eax
and dword [edx], eax
mov bh, 0x24
inc edx
add byte [esi], cl
and eax, 0x255d0042
inc edx
add byte [esi], cl
and eax, 0x29400042
sub dword [edx], eax
mov dword [ecx], ebp
inc edx
add byte [eax + 0x29], al
inc edx
add byte [eax + 0x29], al
inc edx
add byte [eax + 0x29], al
inc edx
add byte [esi + 0x29], al
inc edx
add byte [ecx + ebp + 0x42], cl
add byte [ebp + 0x29], dl
inc edx
add byte [edx], dl
sub eax, dword [edx]
and byte [ebx], ch
inc edx
add byte [ecx], dl
das
inc edx
add byte [edi + 0x2b], al
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 [esi - 0xdffbdcb], cl
inc edx
add byte [ebp + 0x2b], bh
inc edx
add byte [eax - 0x53ffbdd5], ah
sub eax, dword [edx]
pop eax
inc edx
add byte [esi + ebp + 0x42], ch
add byte [ebx + esi], bl
inc edx
add byte [edx + 0x34], ah
inc edx
add byte [eax], dh
xor al, 0x42
add byte [edx + 0x34], ah
inc edx
add byte [eax], bh
xor al, 0x42
add byte [ecx + 0x34], al
inc edx
add byte [eax + 0x34], ah
inc edx
add byte [eax + 0x34], ah
inc edx
add byte [edx + 0x6000422e], ah
xor al, 0x42
add byte [esi + ebp + 0x2ecf0042], ch
inc edx
add byte [edx - 0x3fffbdd2], dh
inc edx
add bh, cl
inc edx
add al, al
inc edx
add al, dh
inc edx
add al, dh
inc edx
add al, dh
inc edx
add dl, dh
inc edx
add byte [eax], al
das
inc edx
add byte [eax], al
das
inc edx
add byte [eax], al
das
inc edx
add byte [edx], al
das
inc edx
add byte [eax], cl
das
inc edx
add byte [ecx], dl
das
inc edx
add byte [ebp - 0xfffbdd1], bh
das
inc edx
add byte [eax + 0x35], dh
inc edx
add byte [ebp + esi + 0x42], bh
add al, dh
das
inc edx
add byte [eax + 0x35], dh
inc edx
add byte [eax + 0x29], dh
inc edx
add dl, bh
das
inc edx
add al, bh
xor al, byte [edx]
adc byte [ebx], dh
inc edx
add byte [eax], dl
xor eax, dword [edx]
adc byte [ebx], dh
inc edx
add byte [eax], dl
xor eax, dword [edx]
push ss
xor eax, dword [edx]
sub byte [esi], 0x42
add byte [eax + 0x29], dh
inc edx
add byte [ebx - 0x3dffbdc9], ah
aaa
inc edx
add dl, al
aaa
inc edx
add byte [edx + 0x40], dl
inc edx
add bl, ah
aaa
inc edx
add ah, al
aas
inc edx
add ah, ah
aas
inc edx
add ah, al
aas
inc edx
add byte [eax + eax*2], cl
inc edx
add byte [eax + eax*2], ah
inc edx
add byte [eax + 0x40], bl
inc edx
add bh, ah
cmp eax, 0x37f60042
inc edx
add dh, dh
aaa
inc edx
add byte [eax - 0x39ffbdc8], bh
cmp byte [edx], al
and al, 0x40
inc edx
add byte [ecx + edi], al
cmp dword [edx], eax
xchg edx, eax
cmp al, 66
add byte [eax], dl
cmp dword [edx], eax
adc byte [ecx], bh
inc edx
add byte [eax], dl
cmp dword [edx], eax
adc bh, byte [ecx]
inc edx
add byte [eax], ah
cmp dword [edx], eax
xchg edx, eax
cmp al, 66
add byte [eax], dh
cmp dword [edx], eax
xchg edx, eax
cmp al, 66
add byte [eax], dh
cmp dword [edx], eax
xor byte [ecx], bh
inc edx
add byte [esi], dh
cmp dword [edx], eax
xor byte [ecx], bh
inc edx
add byte [esi + 0x39], al
inc edx
add byte [edx + 0x5600423c], dl
cmp dword [edx], eax
xchg edx, eax
cmp al, 66
add byte [esp + edi + 0x42], dh
cmp al, 0x42
add byte [edx], al
cmp al, byte [edx]
push esi
cmp al, 66
add byte [ebx], dh
cmp al, byte [edx]
pop esp
cmp al, 66
add byte [edx + edi + 0x42], bl
add byte [edi - 0x58ffbdc6], dl
cmp al, byte [edx]
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
cmpsd dword [esi], dword es:[edi]
cmp al, byte [edx]
add dword [eax], eax
add byte [eax], al
inc edi
cmp al, 66
add byte [esp + edi + 0x42], bl
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [esp + edi + 0x42], bl
add byte [ecx], al
add byte [eax], al
add byte [edx + 0x3c], ah
inc edx
add byte [esi + 0x3c], dl
inc edx
add byte [eax + 0x3b00423c], bl
cmp eax, 0x3c980042
inc edx
add byte [esp + edi + 0x42], dh
add byte [edx + 0x3c], bh
inc edx
add byte [edx - 0x6fffbdc4], dl
cmp al, 0x42
add byte [eax - 0x6dffbdc4], dl
cmp al, 0x42
add byte [eax + 0x3000423c], dl
inc eax
inc edx
add byte [eax], dh
inc eax
inc edx
add byte [eax], dh
inc eax
inc edx
add byte [edx], dh
inc eax
inc edx
add byte [eax + 0x40], al
inc edx
add byte [edx + 0x40], dl
inc edx
add byte [esi], al
aas
inc edx
add byte [ebx + 0x3e], dl
inc edx
add byte [esi], al
aas
inc edx
add byte [ebx - 0x56ffbdc9], ah
aaa
inc edx
add byte [edx - 0x49ffbdc9], dh
pop esi
inc edx
add byte [eax], bl
pop ebp
inc edx
add byte [edi + 0x56], cl
inc edx
add byte [esi + 0x72004259], dh
push edi
inc edx
add ch, cl
pop esp
inc edx
add byte [ebx + ebx*2 + 0x42], al
add al, dl
push edi
inc edx
add byte [edx + ebx*2], al
inc edx
add byte [eax + 0x5b], ch
inc edx
add ah, dh
pop esp
inc edx
add byte [0x49004259], ah
pop ecx
inc edx
add byte [edi + 0x7600425b], cl
pop edx
inc edx
add byte [edx + 0x4c00425a], bl
pop eax
inc edx
add byte [edi + edx*2 + 0x5bb60042], ch
inc edx
add ch, bl
pop ecx
inc edx
add byte [eax + 0x5e], cl
inc edx
add dl, bl
pop ebx
inc edx
add byte [edx], ch
push edi
inc edx
add byte [eax + 0x59], dh
inc edx
add byte [esi + 0x56], dh
inc edx
add cl, al
push esi
inc edx
add byte [ecx + 0x5c], bh
inc edx
add byte [ecx], ah
pop esi
inc edx
add dh, bh
push ebp
inc edx
add byte [ecx + 0x5c], al
inc edx
add ch, bh
pop ebp
inc edx
add dh, dl
pop ebp
inc edx
add byte [esi + 0x57], cl
inc edx
add byte [ebp - 0x66ffbdaa], bl
push edi
inc edx
add dh, dh
pop eax
inc edx
add byte [edx], ch
pop eax
inc edx
add byte [ebx + 0x58], dh
inc edx
add byte [eax], ch
pop edx
inc edx
add byte [edi + 0x5e], ch
inc edx
add byte [edi - 0x6bffbda3], cl
pop ecx
inc edx
add ch, ah
push esi
inc edx
add byte [ebp - 0x32ffbda4], bl
pop esi
inc edx
add byte [ebp + 0x5a], al
inc edx
add byte [0x3f004256], ah
pop ebp
inc edx
add byte [ebp + 0x5c], ah
inc edx
add byte [esi + 0x100425a], bh
pop esp
inc edx
add ah, dh
push edi
inc edx
add byte [ebp + ebx*2 + 0x42], bh
add ch, dh
jbe 0x447459
add byte [esi + 0x6e004268], cl
js 0x447461
add byte [ebp + 0x3a004278], dl
jb 0x447469
add byte [ebx + ebp*2 + 0x6ead0042], al
inc edx
add ah, dl
jb 0x447475
add byte [esi + 0x77], bh
inc edx
add byte [ebp + 0x76], bl
inc edx
add dl, dh
jns 0x447481
add byte [edx + 0x7b], al
inc edx
add byte [edx + 0x3000426c], ah
ja 0x44748d
add byte [ebx], ah
outsd dx, dword [esi]
inc edx
add byte [edi], cl
jbe 0x447495
add cl, bl
push 0x770c0042
inc edx
ja 0x44749d
add byte [ebp - 0x75ffbd87], al
jnp 0x4474a5
add byte [ebx - 0x4cffbd95], ch
je 0x4474ad
add byte [eax + esi*2 + 0x42], cl
add dh, bh
je 0x4474b5
add byte [esi], dh
jbe 0x4474b9
add byte [ebp + 0x75], bl
inc edx
add ch, bh
push 0x7b1e0042
inc edx
jnp 0x4474c5
add byte [ebp + ebp*2 + 0x42], ah
add byte [ebp + 0x6b], bl
inc edx
add byte [edi + 0x6e], ah
outsb dx, byte [esi]
inc edx
add bh, al
push 0x42
add ch, dh
insd dword es:[edi], dx
inc edx
add byte [eax + 0x74], ch
inc edx
add byte [esi], dh
imul eax, dword [edx], 0x71
outsd dx, dword [esi]
inc edx
add byte [ebp + 0x58004268], dh
push 0x42
push 0x6a580042
inc edx
add bh, dl
je 0x4474f1
add byte [edi + 0x43004274], cl
outsb dx, byte [esi]
inc edx
add byte [0xf8004270], ah
jo 0x4474fd
add al, bh
jb 0x447501
add dl, bh
inc edx
add byte [ebp + 0x1f00426f], dl
outsd dx, dword [esi]
inc edx
add byte [edi], bl
je 0x44750d
add byte [edx], dl
imul eax, dword [edx], 0x7e
insb byte es:[edi], dx
inc edx
add byte [edi + 0x18004277], bh
insd dword es:[edi], dx
inc edx
add byte [edi + ebp*2 + 0x73320042], bh
inc edx
add byte [edx + 0x7a], ch
inc edx
add byte [ebx], dl
jb 0x44752d
add bl, ch
push 0x42
add byte [edx + ebp*2 + 0x42], bh
push 0x42
add byte [edx + 0x78], cl
inc edx
add byte [ebx], bl
jns 0x44753d
add byte [edi + 0x77], dl
inc edx
ja 0x447541
add byte [esi + 0x7b], ah
inc edx
jnp 0x447545
add bh, bh
outsb dx, byte [esi]
inc edx
add byte [edi - 0x1ffbd8f], ah
outsd dx, dword [esi]
inc edx
add byte [edx + 0x6f], cl
inc edx
add byte [ebp - 0x10ffbd8e], ch
jno 0x44755d
add byte [esi + 0x7a], al
inc edx
add byte [edx + 0x68], ch
inc edx
add byte [eax - 0x5effbd96], ah
jae 0x44756d
add byte [ecx], ah
insb byte es:[edi], dx
inc edx
add byte [ecx], ah
push 0x76ce0042
inc edx
add byte [edi], bh
jns 0x44757d
add byte [ecx + 0x1c004279], ch
jns 0x447581
add byte [esi + ebp*2], bl
outsb dx, byte [esi]
inc edx
add byte [0x89004275], ah
jb 0x44758d
jne 0x447589
add byte [ecx + 0x1f004272], cl
add byte [edi], bl
jae 0x447591
add bl, ah
ja 0x447595
add byte [esi - 0x74ffbd8a], cl
outsb dx, byte [esi]
inc edx
add byte [ebp + esi*2 + 0x77a20042], al
inc edx
add byte [edi + 0x7c004270], ch
jae 0x4475ad
jne 0x4475a1
add byte [edx - 0x50ffbd89], ah
jo 0x4475a9
add byte [ebx + esi*2 + 0x42], bh
add byte [eax - 0x1affbd93], cl
insd dword es:[edi], dx
inc edx
add ch, ah
insb byte es:[edi], dx
inc edx
add ah, dl
outsb dx, byte [esi]
inc edx
add ch, cl
jns 0x4475bd
add byte [ecx + 0x6300427a], dl
jp 0x4475c1
add byte [ebx + 0x79], ah
inc edx
jns 0x4475c5
add byte [ecx], bl
jp 0x4475c9
add bh, cl
imul eax, dword [edx], 0xffffffb2
insd dword es:[edi], dx
inc edx
add byte [ebp + 0x6c], al
insb byte es:[edi], dx
inc edx
add byte [esi + 0x73], dl
inc edx
jae 0x4475d9
add ch, ch
jne 0x4475dd
add byte [eax + edi*2 + 0x72610042], bh
inc edx
jb 0x4475e5
add byte [ebx + 0x70], dh
inc edx
add byte [ecx], ah
imul eax, dword [edx], case.0x4239fb.197
aas
insd dword es:[edi], dx
push 0x6d3f0042
inc edx
add byte [ebx - 0xffbd97], bh
imul eax, dword [edx], 0x70
imul eax, dword [edx], case.0x4239fb.202
inc esi
imul eax, dword [edx], case.0x4239fb.203
bnd jp 0x44760d
je 0x447609
add dl, dh
jp 0x44760d
add byte [ecx + 0x75], cl
inc edx
add ch, al
jae 0x447615
add byte [ebx + 0x69], cl
inc edx
add dh, cl
jno 0x44761d
add cl, bh
imul eax, dword [edx], case.0x4239fb.210
and edi, dword [eax + 0x42]
js 0x447629
add dh, al
insb byte es:[edi], dx
inc edx
add byte [ecx + 0x71004276], al
jg 0x447635
add byte [edi + edi*2 + 0x42], ch
add byte [0xdd004281], ah
test al, 0x42
add byte [edi], ch
lcall 0x42, 0x9a3f0042
imul byte [ebx - 0x65afffbe]
stosd dword es:[edi], eax
inc edx
add byte [eax - 0x66], dl
lcall 0x42, 0x9a560042
push esi
inc edx
add byte [esi - 0x66], dl
inc edx
add byte [esi - 0x66], dl
inc edx
add cl, al
lcall 0x42, 0x9a650042
sub byte [ebx - 0x65c5ffbe], bl
inc edx
add ah, al
lcall 0x42, 0x9ac10042
lcall 0x42, 0x9b280042
lcall 0x42, 0x9b280042
cmp bl, byte [edx - 0x633bffbe]
pushfd
inc edx
add byte [esi], ch
add dword [edx], case.0x4239fb.230
push 0xd2004283
add dword [edx], 0xffffffd2
add byte [edx], 0xa
test byte [edx], al
or al, byte [edi - 0x6809ffbe]
inc edx
add byte [ebp - 0x72ffbd77], cl
mov dword [edx], eax
push ebx
xchg dword [edx], eax
push ebx
xchg dword [edx], eax
mov dword [0x60004287], eax
mov byte [edx], al
mov esi, 0xda004287
mov byte [edx], al
int3