Function at 0x4243d0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x21fc
call fcn.0040c4e0
mov dword [esp + 0x11fc], 0x9640b68
mov dword [esp + 0x1200], 0x55f0753
mov dword [esp + 0x1204], 0x16f0353
mov dword [esp + 0x1208], 0x1d701f6c
mov dword [esp + 0x120c], 0x197e1b7b
mov dword [esp + 0x1210], 0x157b1773
mov dword [esp + 0x1214], 0x117c134f
mov dword [esp + 0x1218], 0x2f10
mov dword [esp + 0xa8c], 0
mov eax, dword [esp + 0xa8c]
cmp eax, 0x1f
ja 0x4244b9
nop
nop
nop
mov ecx, dword [esp + 0xa8c]
mov eax, dword [esp + 0xa8c]
movzx eax, byte [esp + eax + 0x11fc]
lea edx, [ecx + ecx]
and edx, 0x43313e06
mov esi, ecx
not esi
or esi, 0x21989f03
add esi, ecx
sub ecx, edx
lea ecx, [ecx + esi*2]
add ecx, 0x21989f05
xor ecx, eax
mov dword [esp + 0x8c], ecx
mov eax, dword [esp + 0x8c]
add al, 0xf1
mov ecx, dword [esp + 0xa8c]
mov byte [esp + ecx + 0x11fc], al
inc dword [esp + 0xa8c]
mov eax, dword [esp + 0xa8c]
cmp eax, 0x20
jb 0x424450
lea eax, [esp + 0x48]
lea esi, [esp + 0x11fc]
push 0
push 0
push 0x20019
push eax
push esi
call fcn.004436a0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x44acbc]
lea eax, [esp + 0x74]
lea ecx, [esp + 0x54]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x68]
call fcn.00443af0
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44acc4]
xor eax, eax
jmp 0x42621d
mov eax, dword [case.0x4244da.6]
nop
nop
nop
nop
nop
jmp eax
xor ecx, ecx
lea eax, [esp + 0x8e]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x22]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x20]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x9e]
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x60], 0
cmp ecx, dword [esp + 0x54]
lea ebx, [esp + 0x12e]
setb al
lea edi, [esp + 0x12e]
mov dword [esp + 0x28], 0
jmp dword [eax*4 + 0x44acdc]
mov word [esi], 0
mov eax, dword [esp + 0x60]
mov ecx, eax
and cl, 1
movzx ecx, cl
jmp dword [ecx*4 + 0x44ace4]
movzx ecx, word [esp + 0x11fc]
xor ebx, ebx
test cx, cx
je 0x425fa4
lea eax, [esp + 0x11fc]
jmp 0x425f7e
mov ecx, dword [esp + 0x28]
mov eax, ecx
and eax, 1
xor ecx, 1
lea ecx, [ecx + eax*2]
lea eax, [esp + 0x8e]
mov dword [esp + 0x38], eax
lea ebx, [esp + 0x12e]
lea edi, [esp + 0x12e]
xor eax, eax
mov dword [esp + 0x28], ecx
cmp ecx, dword [esp + 0x54]
setb al
jmp dword [eax*4 + 0x44acdc]
mov ebp, dword [esp + 0x74]
mov eax, ebp
inc eax
lea eax, [ebp + ebp + 2]
jns 0x4245fe
mov eax, 0xffffffff
push eax
call fcn.0040c580
add esp, 4
mov dword [esp + 0x70], ebp
lea ecx, [esp + 0x70]
push ecx
mov dword [esp + 0x38], eax
push eax
push dword [esp + 0x30]
push dword [esp + 0x54]
call fcn.004437e0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44acfc]
jmp 0x425100
mov ebp, dword [esp + 0x34]
jmp dword [0x44ad08]
mov edx, dword [esp + 0x3c]
add edx, 4
xor eax, eax
mov ecx, edx
mov dword [esp + 0x3c], edx
cmp edx, 0x14
setne al
jmp dword [eax*4 + 0x44ad1c]
jmp dword [0x44ad28]
mov ebx, esi
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + eax + 0x78]
mov dword [esp + 0x8c], 0x57664978
mov dword [esp + 0x90], 0x53625564
mov dword [esp + 0x94], 0x5f6e5160
mov dword [esp + 0x98], 0x5b825d6c
mov word [esp + 0x9c], 0x5958
mov ecx, dword [esp + 0x5c]
mov byte [ecx + 4], 0
mov dword [ecx], 0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 0x16
ja 0x424765
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
movzx ecx, byte [esp + ecx + 0x8c]
mov esi, edx
not esi
or esi, 0x9f14a8e
add esi, edx
xor edx, 0x9f14a8e
lea edi, [edx + esi*2]
lea edx, [edx + esi*2]
add edx, 2
lea esi, [ecx + edi]
add esi, 2
mov edi, ecx
not edi
or edi, edx
lea edx, [ecx + edi]
add ecx, edi
inc ecx
mov edi, ecx
xor edi, esi
not ecx
and ecx, esi
add ecx, ecx
add edx, edi
inc edx
sub ecx, edx
mov dword [esp + 0xa8c], ecx
mov ecx, dword [esp + 0xa8c]
mov edx, ecx
xor edx, 0xc6
and ecx, 0x39
add ecx, ecx
sub ecx, edx
mov edx, dword [esp + 0x10]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 0x17
jb 0x4246e0
movzx edx, word [eax]
lea ecx, [esp + 0x88c]
test dx, dx
je 0x424791
add eax, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [eax]
add eax, 2
test dx, dx
jne 0x424780
mov word [ecx], 0
movzx eax, word [esp + 0x8c]
test ax, ax
je 0x4247c8
mov edx, dword [esp + 0x38]
mov esi, ebx
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], ax
add ecx, 2
movzx eax, word [edx]
add edx, 2
test ax, ax
jne 0x4247b0
mov word [ecx], 0
jmp case.0x425f5d.3
mov esi, ebx
mov word [ecx], 0
jmp case.0x425f5d.3
mov word [edx], 0
jmp dword [0x44ad30]
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + eax + 0x78]
mov dword [esp + 0x8c], 0x57664978
mov dword [esp + 0x90], 0x53625564
mov dword [esp + 0x94], 0x5f6e5160
mov dword [esp + 0x98], 0x5b825d6c
mov word [esp + 0x9c], 0x5958
mov ecx, dword [esp + 0x5c]
mov byte [ecx + 4], 0
mov dword [ecx], 0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 0x16
ja 0x4248d5
nop
nop
nop
nop
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
movzx ecx, byte [esp + ecx + 0x8c]
mov edi, edx
not edi
or edi, 0x9f14a8e
add edi, edx
xor edx, 0x9f14a8e
lea ebx, [edx + edi*2]
lea edx, [edx + edi*2]
add edx, 2
lea edi, [ecx + ebx]
add edi, 2
mov ebx, ecx
not ebx
or ebx, edx
lea edx, [ecx + ebx]
add ecx, ebx
inc ecx
mov ebx, ecx
xor ebx, edi
not ecx
and ecx, edi
add ecx, ecx
add edx, ebx
inc edx
sub ecx, edx
mov dword [esp + 0xa8c], ecx
mov ecx, dword [esp + 0xa8c]
mov edx, ecx
xor edx, 0xc6
and ecx, 0x39
add ecx, ecx
sub ecx, edx
mov edx, dword [esp + 0x10]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 0x17
jb 0x424850
movzx ecx, word [eax]
test cx, cx
je 0x424910
add eax, 2
lea edx, [esp + 0x88c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x4248f0
jmp 0x424917
lea edx, [esp + 0x88c]
mov word [edx], 0
movzx eax, word [esp + 0x8c]
test ax, ax
je 0x4247e0
mov ecx, dword [esp + 0x38]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x424940
jmp 0x4247e0
mov cx, 0x31
xor eax, eax
cmp cx, 0x35
setb al
mov dword [esp + 0x4c], edx
jmp dword [eax*4 + 0x44ad34]
mov eax, edi
and eax, 1
xor edi, 1
lea edi, [edi + eax*2]
xor eax, eax
cmp di, 0x35
setb al
mov edx, dword [esp + 0x4c]
mov ecx, edi
jmp dword [eax*4 + 0x44ad34]
mov word [edx - 2], cx
lea eax, [esp + 0x68]
mov edi, ecx
lea ecx, [esp + 0x88c]
push dword [esp + 0x50]
push 0
push 0x20019
push eax
push ecx
call fcn.004436a0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44ad3c]
mov dword [esp + 0x58], edi
mov dword [esp + 0x6c], 0x800
mov dword [esp + 0x44], 0x400
xor edi, edi
mov dword [esp + 4], 0
jmp 0x424a10
add ecx, 4
mov al, 1
mov dword [esp + 4], eax
mov edi, dword [esp + 8]
inc edi
mov esi, ecx
lea eax, [esp + 0x44]
lea ebx, [esp + 0xa8c]
lea ecx, [esp + 0x64]
lea edx, [esp + 0x6c]
push eax
push ebx
push ecx
push edx
lea eax, [esp + 0x9c]
push eax
mov dword [esp + 0x1c], edi
push edi
push dword [esp + 0x80]
call fcn.00443de0
add esp, 0x1c
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44ad44]
test byte [esp + 4], 1
sete al
cmp dword [esp + 0x64], 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44ad4c]
mov eax, dword [case.0x425001.8]
jmp eax
mov dword [esp + 0x10], 0x315b3f7f
mov dword [esp + 0x14], 0x35433355
mov dword [esp + 0x18], 0x49483743
mov dword [esp + 0x1c], 0x4d4a4b3c
mov eax, dword [esp + 0x40]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x12
ja 0x424af9
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x10]
mov edx, eax
xor edx, 0xb321a9b5
and eax, 0x3321a9b5
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
add al, 0x77
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x13
jb 0x424ac0
movzx ebp, word [esp + 0x10]
lea edi, [esp + 0x8c]
test bp, bp
je 0x424b4c
lea eax, [esp + 0x8c]
lea edx, [esp + 0x10]
mov edi, eax
jmp 0x424b28
movzx ebp, word [edx]
test bp, bp
je 0x424b4c
movzx ebx, word [eax]
test bx, bx
je 0x424b4a
add eax, 2
add edx, 2
lea ecx, [edi + 2]
cmp bx, bp
je 0x424b42
mov edi, ecx
mov eax, ecx
je 0x424b20
lea edx, [esp + 0x10]
jmp 0x424b20
xor edi, edi
xor ecx, ecx
test edi, edi
setne cl
jmp dword [ecx*4 + 0x44ad54]
xor eax, eax
cmp dword [esp + 0x64], 3
sete al
jmp dword [eax*4 + 0x44ad7c]
jmp case.0x425001.20
mov dword [esp + 0x10], 0x73137100
mov dword [esp + 0x14], 0x6ffd6dff
mov dword [esp + 0x18], 0x6bfd69e7
mov dword [esp + 0x1c], 0x67fa65f6
mov word [esp + 0x20], 0x6160
mov eax, dword [esp + 0x2c]
mov word [eax + 4], 0
mov dword [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x17
ja 0x424c03
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x10]
mov edx, eax
xor edx, 0x5bfcff6c
and eax, 0xdbfcff6c
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov ecx, eax
xor ecx, 0x1c
and eax, 0x63
add eax, eax
sub eax, ecx
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x18
jb 0x424bc0
movzx ebx, word [esp + 0x10]
lea eax, [esp + 0x8c]
test bx, bx
je 0x424c68
lea ecx, [esp + 0x8c]
lea edx, [esp + 0x10]
mov eax, ecx
jmp 0x424c38
movzx ebx, word [edx]
test bx, bx
je 0x424c68
movzx ebp, word [ecx]
test bp, bp
je 0x424c66
add ecx, 2
add edx, 2
lea edi, [eax + 2]
cmp bp, bx
je 0x424c52
mov eax, edi
mov ecx, edi
je 0x424c30
lea edx, [esp + 0x10]
jmp 0x424c30
jmp dword [0x44ad60]
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44ad84]
mov edi, dword [esp + 8]
inc edi
jmp 0x424a10
mov eax, dword [esp + 0x44]
cmp eax, 2
mov edi, dword [esp + 8]
jb 0x424d36
shr eax, 1
lea edx, [eax - 1]
mov ebx, eax
lea ecx, [esp + 0xa8c]
and ebx, 3
je 0x424cd7
mov dword [esp + 0xc], edx
xor ebp, ebp
nop
nop
nop
nop
nop
nop
mov edi, esi
movzx esi, word [ecx]
xor edx, edx
test si, si
setne dl
lea ecx, [ecx + edx*2]
mov word [edi], si
mov esi, edi
add esi, 2
inc ebp
cmp ebx, ebp
jne 0x424cb0
sub eax, ebp
mov edi, dword [esp + 8]
mov edx, dword [esp + 0xc]
cmp edx, 3
jb 0x424d36
nop
nop
nop
nop
movzx edx, word [ecx]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [ecx + ebx*2]
mov word [esi], dx
movzx ecx, word [ecx + ebx*2]
xor edx, edx
test cx, cx
setne dl
lea ebx, [edi + edx*2]
mov word [esi + 2], cx
movzx ecx, word [edi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [ebx + edx*2]
mov word [esi + 4], cx
movzx edx, word [ebx + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [esi + 6], dx
add esi, 8
lea ecx, [edi + ecx*2]
add eax, 0xfffffffc
jne 0x424ce0
mov edi, dword [esp + 8]
mov word [esi], 0xa
add esi, 2
mov al, 1
mov dword [esp + 0x60], eax
inc edi
jmp 0x424a10
mov eax, dword [esp + 0x44]
mov edx, esi
cmp eax, 2
jb 0x424e16
mov dword [esp + 4], esi
shr eax, 1
lea edi, [eax - 1]
mov esi, eax
lea ecx, [esp + 0xa8c]
and esi, 3
je 0x424daa
mov dword [esp + 0xc], edi
xor ebp, ebp
mov edx, dword [esp + 4]
movzx edi, word [ecx]
xor ebx, ebx
test di, di
setne bl
lea ecx, [ecx + ebx*2]
mov word [edx], di
add edx, 2
inc ebp
cmp esi, ebp
jne 0x424d80
sub eax, ebp
mov esi, dword [esp + 4]
mov edi, dword [esp + 0xc]
cmp edi, 3
jae 0x424dc0
jmp 0x424e16
mov esi, dword [esp + 4]
mov edx, esi
cmp edi, 3
jb 0x424e16
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [ecx]
xor ebx, ebx
test si, si
setne bl
lea edi, [ecx + ebx*2]
mov word [edx], si
movzx ecx, word [ecx + ebx*2]
xor ebx, ebx
test cx, cx
setne bl
lea esi, [edi + ebx*2]
mov word [edx + 2], cx
movzx ecx, word [edi + ebx*2]
xor ebx, ebx
test cx, cx
setne bl
lea edi, [esi + ebx*2]
mov word [edx + 4], cx
movzx esi, word [esi + ebx*2]
xor ecx, ecx
test si, si
setne cl
mov word [edx + 6], si
add edx, 8
lea ecx, [edi + ecx*2]
add eax, 0xfffffffc
jne 0x424dc0
mov esi, dword [esp + 4]
mov dword [edx], 0x20003a
mov eax, dword [esp + 0x44]
mov ecx, esi
cmp eax, 2
jb 0x424e80
shr eax, 1
lea ebx, [eax - 1]
mov edi, eax
and edi, 3
je 0x424e8c
mov dword [esp + 0xc], ebx
xor ebp, ebp
lea edx, [esp + 0xa8c]
mov dword [esp + 4], esi
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [edx]
xor ebx, ebx
test si, si
setne bl
lea edx, [edx + ebx*2]
mov word [ecx], si
add ecx, 2
inc ebp
cmp edi, ebp
jne 0x424e50
sub eax, ebp
mov esi, dword [esp + 4]
mov ebx, dword [esp + 0xc]
cmp ebx, 3
jae 0x424e9a
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [ecx], 0x20003a
jmp dword [0x44ad64]
mov ecx, esi
lea edx, [esp + 0xa8c]
cmp ebx, 3
jb 0x424e80
mov ebp, esi
nop
nop
nop
nop
movzx esi, word [edx]
xor ebx, ebx
test si, si
setne bl
lea edi, [edx + ebx*2]
mov word [ecx], si
movzx edx, word [edx + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [edi + ebx*2]
mov word [ecx + 2], dx
movzx edx, word [edi + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [esi + ebx*2]
mov word [ecx + 4], dx
movzx esi, word [esi + ebx*2]
xor edx, edx
test si, si
setne dl
mov word [ecx + 6], si
add ecx, 8
lea edx, [edi + edx*2]
add eax, 0xfffffffc
jne 0x424ea0
mov esi, ebp
mov dword [ecx], 0x20003a
jmp dword [0x44ad64]
mov eax, dword [esp + 0x68]
mov dword [esp + 0x10], 0x74750a0b
mov byte [esp + 0x14], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 4
ja 0x424f6c
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x10]
mov edi, ecx
xor edi, 0x3b8cc0be
and ecx, 0x3b8cc0be
lea ecx, [edi + ecx*2]
lea edi, [ecx + edx]
and ecx, edx
mov edx, edi
not edx
and edx, ecx
add edx, ecx
not ecx
and ecx, edi
sub ecx, edx
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x30]
add cl, 0x4a
mov edx, dword [esp]
mov byte [esp + edx + 0x10], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 5
jb 0x424f20
mov ecx, dword [0x44f754]
test ecx, ecx
je 0x424fb0
mov edx, dword [esp + 0x10]
xor ebx, ebx
mov ebp, dword [0x44f758]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebp + ebx*8], 0x625b6034
je 0x424fa1
inc ebx
cmp ecx, ebx
jne 0x424f90
jmp 0x424fb0
mov ecx, dword [ebp + ebx*8 + 4]
cmp ecx, edx
jne case.default.0x424fcc
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x58]
mov eax, ecx
and eax, 1
xor ecx, 1
lea ecx, [ecx + eax*2]
xor eax, eax
cmp cx, 0x35
setb al
mov edx, dword [esp + 0x4c]
jmp dword [eax*4 + 0x44ad34]
push eax
push 1
push dword [0x44f75c]
push ecx
call fcn.0043f5f0
add esp, 0x10
mov ecx, dword [esp + 0x58]
mov eax, ecx
and eax, 1
xor ecx, 1
lea ecx, [ecx + eax*2]
xor eax, eax
cmp cx, 0x35
setb al
mov edx, dword [esp + 0x4c]
jmp dword [eax*4 + 0x44ad34]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x8c], 0x74750a0b
mov byte [esp + 0x90], 0
mov dword [esp + 0x88c], 0
mov ecx, dword [esp + 0x88c]
cmp ecx, 4
ja 0x4250ac
nop
nop
mov ecx, dword [esp + 0x88c]
mov edx, dword [esp + 0x88c]
movzx edx, byte [esp + edx + 0x8c]
mov edi, ecx
xor edi, 0x3b8cc0be
and ecx, 0x3b8cc0be
lea ecx, [edi + ecx*2]
lea edi, [ecx + edx]
and ecx, edx
mov edx, edi
not edx
and edx, ecx
add edx, ecx
not ecx
and ecx, edi
sub ecx, edx
mov dword [esp + 0xa8c], ecx
mov ecx, dword [esp + 0xa8c]
add cl, 0x4a
mov edx, dword [esp + 0x88c]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
cmp ecx, 5
jb 0x425040
mov ecx, dword [0x44f754]
test ecx, ecx
je 0x425100
mov edx, dword [esp + 0x8c]
xor edi, edi
mov ebx, dword [0x44f758]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x625b6034
je 0x4250e0
inc edi
cmp ecx, edi
jne 0x4250d0
jmp 0x425100
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x425100
push eax
push 1
push dword [0x44f75c]
push ecx
call fcn.0043f5f0
add esp, 0x10
nop
nop
nop
nop
nop
nop
mov eax, dword [case.0x425001.25]
mov ecx, dword [esp + 0x34]
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44ad9c]
push ecx
call fcn.0040c590
add esp, 4
mov ecx, dword [esp + 0x28]
mov eax, ecx
and eax, 1
xor ecx, 1
lea ecx, [ecx + eax*2]
lea eax, [esp + 0x8e]
mov dword [esp + 0x38], eax
lea ebx, [esp + 0x12e]
lea edi, [esp + 0x12e]
xor eax, eax
mov dword [esp + 0x28], ecx
cmp ecx, dword [esp + 0x54]
setb al
jmp dword [eax*4 + 0x44acdc]
lea eax, [esp + 0x50]
push dword [esp + 0x48]
push 0
push 0x20019
push eax
push ebp
call fcn.004436a0
add esp, 0x14
lea eax, [esp + 0x50]
push dword [esp + 0x48]
push 0
push 0x20019
push eax
push ebp
call fcn.004436a0
add esp, 0x14
jmp dword [0x44ad0c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44ad14]
jmp 0x425100
mov dword [esp + 4], esi
mov dword [esp + 0x8c], 0xb925bbf7
mov dword [esp + 0x90], 0xbd28bfdd
mov dword [esp + 0x94], 0xb127b32d
mov dword [esp + 0x98], 0xb52cb721
mov dword [esp + 0x9c], 0xa9c6ab20
mov dword [esp + 0xa0], 0xad31afc1
mov dword [esp + 0xa4], 0xa1c6a33e
mov dword [esp + 0xa8], 0xa52fa731
mov dword [esp + 0xac], 0xd9fadb31
mov dword [esp + 0xb0], 0xdd45dfab
mov dword [esp + 0xb4], 0xd147d349
mov dword [esp + 0xb8], 0xd54fd7b7
mov dword [esp + 0xbc], 0xc958cb4b
mov dword [esp + 0xc0], 0xcdeecf51
mov dword [esp + 0xc4], 0xc149c3b9
mov dword [esp + 0xc8], 0xc553c7a6
mov dword [esp + 0xcc], 0xf96ffb4b
mov dword [esp + 0xd0], 0xfd65ff6c
mov dword [esp + 0xd4], 0xf19ef36f
mov dword [esp + 0xd8], 0xf560f780
mov dword [esp + 0xdc], 0xe970eb65
mov dword [esp + 0xe0], 0xed72ef77
mov dword [esp + 0xe4], 0xe177e377
mov dword [esp + 0xe8], 0xe5a9e78c
mov dword [esp + 0xec], 0x19531bb1
mov dword [esp + 0xf0], 0x1d5b1f53
mov dword [esp + 0xf4], 0x11681366
mov dword [esp + 0xf8], 0x15421740
mov dword [esp + 0xfc], 0x95f0b43
mov dword [esp + 0x100], 0xd590f5f
mov dword [esp + 0x104], 0x166035b
mov dword [esp + 0x108], 0x5400755
mov dword [esp + 0x10c], 0x39723b4c
mov dword [esp + 0x110], 0x3d6e3f7f
mov dword [esp + 0x114], 0x3165336c
mov dword [esp + 0x118], 0x35623760
mov dword [esp + 0x11c], 0x297c2b72
mov dword [esp + 0x120], 0x2d642f6f
mov dword [esp + 0x124], 0x216b2366
mov dword [esp + 0x128], 0x254a276a
lea eax, [esp + 0x12c]
mov word [esp + 0x12c], 0x5b24
mov byte [edi + 2], 0
mov word [edi], 0
mov dword [esp + 0x88c], 0
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xa4
ja 0x425411
mov edx, dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
movzx ecx, byte [esp + ecx + 0x8c]
mov esi, edx
xor esi, 0x5311f9f
add edx, edx
and edx, 0xa623f3e
mov edi, edx
and edi, esi
xor edx, esi
lea edx, [edx + edi*2]
mov esi, edx
add edx, ecx
not ecx
or esi, ecx
sub ecx, esi
lea ecx, [edx + ecx*2]
mov dword [esp + 0xa8c], ecx
mov ecx, dword [esp + 0xa8c]
add cl, 0xe5
mov edx, dword [esp + 0x88c]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xa5
jb 0x4253a0
lea edi, [esp + 0xe8e]
lea edx, [esp + 0x8c]
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xf2e]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x8c], 0x49dd4bff
mov dword [esp + 0x90], 0x45c847d5
mov dword [esp + 0x94], 0x41cf43d5
mov dword [esp + 0x98], 0xbd24bfd1
mov dword [esp + 0x9c], 0xb91ebb30
mov dword [esp + 0xa0], 0xb521b711
mov dword [esp + 0xa4], 0xb12eb326
mov dword [esp + 0xa8], 0xad27af21
mov dword [esp + 0xac], 0xa9caab21
mov dword [esp + 0xb0], 0xa50aa71a
mov dword [esp + 0xb4], 0xa11fa300
mov dword [esp + 0xb8], 0x9d109f2b
mov dword [esp + 0xbc], 0x99019b12
mov dword [esp + 0xc0], 0x951a970a
mov dword [esp + 0xc4], 0x9109933e
mov dword [esp + 0xc8], 0x8d038f1e
mov dword [esp + 0xcc], 0x891b8b1b
mov dword [esp + 0xd0], 0x8522871a
mov dword [esp + 0xd4], 0x8115832d
mov dword [esp + 0xd8], 0xfd62ff12
mov dword [esp + 0xdc], 0xf973fb6d
mov dword [esp + 0xe0], 0xf596f775
mov dword [esp + 0xe4], 0xf169f347
mov dword [esp + 0xe8], 0xed63ef7d
mov dword [esp + 0xec], 0xe973eb73
mov dword [esp + 0xf0], 0xe574e77f
mov dword [esp + 0xf4], 0xe182e37d
mov dword [esp + 0xf8], 0xdd55df4d
mov dword [esp + 0xfc], 0xd957db42
mov dword [esp + 0x100], 0xd55bd75f
mov dword [esp + 0x104], 0xd149d358
mov dword [esp + 0x108], 0xcd6acf43
mov dword [esp + 0x10c], 0xc944cb7c
mov dword [esp + 0x110], 0xc55cc759
mov dword [esp + 0x114], 0xc156c353
mov dword [esp + 0x118], 0x3db33f5b
mov dword [esp + 0x11c], 0x398b3b98
mov dword [esp + 0x120], 0x35ba37b3
mov dword [esp + 0x124], 0x31a333a0
mov dword [esp + 0x128], 0x2dbb2fa1
mov dword [esp + 0x12c], 0x296d2b88
mov dword [esp + 0x130], 0x256f2765
mov dword [esp + 0x134], 0x219f236f
mov dword [esp + 0x138], 0x1da41f9a
mov dword [esp + 0x13c], 0x19561b4c
mov dword [esp + 0x140], 0x155b1757
mov dword [esp + 0x144], 0x115d135b
mov dword [esp + 0x148], 0xd920f5f
mov dword [esp + 0x14c], 0x9b40b41
mov dword [esp + 0x150], 0x54e0740
mov dword [esp + 0x154], 0x15203bb
mov dword [esp + 0x158], 0x7d317f50
mov dword [esp + 0x15c], 0x79367b2c
mov dword [esp + 0x160], 0x753877c6
mov dword [esp + 0x164], 0x713873cb
mov dword [esp + 0x168], 0x6d276f3a
mov dword [esp + 0x16c], 0x69ce6b26
lea eax, [esp + 0x170]
mov word [esp + 0x170], 0x6768
mov dword [esp + 0x172], 0
mov dword [esp + 0x88c], 0
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xe9
ja 0x42575a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x88c]
mov edx, dword [esp + 0x88c]
movzx edx, byte [esp + edx + 0x8c]
mov esi, ecx
xor esi, 0x87945bf3
and ecx, 0x7945bf3
lea ecx, [esi + ecx*2]
xor ecx, edx
mov dword [esp + 0xa8c], ecx
mov ecx, dword [esp + 0xa8c]
mov edx, ecx
xor edx, 0xbf
and ecx, 0x40
add ecx, ecx
sub ecx, edx
mov edx, dword [esp + 0x88c]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xea
jb 0x4256f0
lea edi, [esp + 0xf30]
lea edx, [esp + 0x8c]
mov ecx, 0x39
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x1014]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x8c], 0x33db31e5
mov dword [esp + 0x90], 0x3fcc3ddf
mov dword [esp + 0x94], 0x3bc939cf
mov dword [esp + 0x98], 0xc728c533
mov dword [esp + 0x9c], 0xc326c13c
mov dword [esp + 0xa0], 0xcf20cd1b
mov dword [esp + 0xa4], 0xcb23c926
mov dword [esp + 0xa8], 0xd73bd537
mov dword [esp + 0xac], 0xd3e3d134
mov dword [esp + 0xb0], 0xdfe8ddef
mov dword [esp + 0xb4], 0xdb3ed9e8
mov dword [esp + 0xb8], 0xe71be533
mov dword [esp + 0xbc], 0xe316e11c
mov dword [esp + 0xc0], 0xef19ed1b
mov dword [esp + 0xc4], 0xeb0ee903
mov dword [esp + 0xc8], 0xf704f524
mov dword [esp + 0xcc], 0xf31cf107
mov dword [esp + 0xd0], 0xff0afd15
mov dword [esp + 0xd4], 0xfb09f915
mov dword [esp + 0xd8], 0x87518560
mov dword [esp + 0xdc], 0x837e817d
mov dword [esp + 0xe0], 0x8f798d78
mov dword [esp + 0xe4], 0x8b61897f
mov dword [esp + 0xe8], 0x97af9570
mov dword [esp + 0xec], 0x93ad91a3
mov dword [esp + 0xf0], 0x9f5d9da1
mov dword [esp + 0xf4], 0x9b549956
mov dword [esp + 0xf8], 0xa79aa594
mov dword [esp + 0xfc], 0xa391a191
mov dword [esp + 0x100], 0xaf9fad9d
mov dword [esp + 0x104], 0xab46a999
mov dword [esp + 0x108], 0xb774b587
mov dword [esp + 0x10c], 0xb38ab188
mov dword [esp + 0x110], 0xbf8ebd7d
mov dword [esp + 0x114], 0xbb8bb988
mov dword [esp + 0x118], 0x477a4574
mov dword [esp + 0x11c], 0x43704182
mov dword [esp + 0x120], 0x4f704d8d
mov dword [esp + 0x124], 0x4b754976
mov dword [esp + 0x128], 0x57b2556a
lea eax, [esp + 0x12c]
mov word [esp + 0x12c], 0x5150
mov byte [ebx + 4], 0
mov dword [ebx], 0
mov dword [esp + 0x88c], 0
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xa6
ja 0x4259ed
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x88c]
mov edx, dword [esp + 0x88c]
movzx edx, byte [esp + edx + 0x8c]
mov esi, ecx
xor esi, 0x4f9f5974
add ecx, ecx
and ecx, 0x9f3eb2e8
mov edi, ecx
and edi, esi
xor ecx, esi
lea ecx, [ecx + edi*2]
lea esi, [ecx + edx]
and ecx, edx
add ecx, ecx
sub esi, ecx
mov dword [esp + 0xa8c], esi
mov ecx, dword [esp + 0xa8c]
add cl, 0xbc
mov edx, dword [esp + 0x88c]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xa7
jb 0x425980
lea edi, [esp + 0x115a]
lea edx, [esp + 0x8c]
mov ecx, 0x28
mov ebp, edi
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x11fa]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x8c], 0xd965db17
mov dword [esp + 0x90], 0xdd68df7d
mov dword [esp + 0x94], 0xd167d36d
mov dword [esp + 0x98], 0xd56cd761
mov dword [esp + 0x9c], 0xa906ab60
mov dword [esp + 0xa0], 0xad14af79
mov dword [esp + 0xa4], 0xa11da316
mov dword [esp + 0xa8], 0xa51da705
mov dword [esp + 0xac], 0xb94dbb08
mov dword [esp + 0xb0], 0xbd4cbf4c
mov dword [esp + 0xb4], 0xb11eb34c
mov dword [esp + 0xb8], 0xb53db761
mov dword [esp + 0xbc], 0x89368b00
mov dword [esp + 0xc0], 0x8d3f8f39
mov dword [esp + 0xc4], 0x812e8331
mov dword [esp + 0xc8], 0x85308750
mov dword [esp + 0xcc], 0x99209b35
mov dword [esp + 0xd0], 0x9d229f27
mov dword [esp + 0xd4], 0x91279327
mov dword [esp + 0xd8], 0x9547973c
mov dword [esp + 0xdc], 0x69de6b1f
mov dword [esp + 0xe0], 0x6ddf6fd4
mov dword [esp + 0xe4], 0x61df63dd
mov dword [esp + 0xe8], 0x65a967cc
mov dword [esp + 0xec], 0x79b37b91
mov dword [esp + 0xf0], 0x7dbb7fb3
mov dword [esp + 0xf4], 0x71a873a6
mov dword [esp + 0xf8], 0x75827780
mov dword [esp + 0xfc], 0x49bf4b83
mov dword [esp + 0x100], 0x4db94fbf
mov dword [esp + 0x104], 0x41e643bb
mov dword [esp + 0x108], 0x458047b5
mov dword [esp + 0x10c], 0x59925b8c
mov dword [esp + 0x110], 0x5dae5f9f
mov dword [esp + 0x114], 0x51a553ac
mov dword [esp + 0x118], 0x55a257a0
mov dword [esp + 0x11c], 0x29dc2b92
mov dword [esp + 0x120], 0x2de42fef
mov dword [esp + 0x124], 0x21eb23e6
mov dword [esp + 0x128], 0x258a27ea
lea edx, [esp + 0x12c]
mov word [esp + 0x12c], 0x3b24
mov dword [esp + 0x12e], 0
mov dword [esp + 0x88c], 0
mov eax, dword [esp + 0x88c]
cmp eax, 0xa5
ja 0x425c78
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
movzx ecx, byte [esp + ecx + 0x8c]
mov esi, eax
xor esi, 0x11b932f
and eax, 0x11b932f
lea eax, [esi + eax*2]
xor eax, ecx
mov dword [esp + 0xa8c], eax
mov eax, dword [esp + 0xa8c]
mov ecx, eax
xor ecx, 0xeb
and eax, 0x14
add eax, eax
sub eax, ecx
mov ecx, dword [esp + 0x88c]
mov byte [esp + ecx + 0x8c], al
inc dword [esp + 0x88c]
mov eax, dword [esp + 0x88c]
cmp eax, 0xa6
jb 0x425c10
lea eax, [esp + 0x10b8]
lea esi, [esp + 0x8c]
mov ecx, 0x28
mov edi, eax
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea edi, [esp + 0x1158]
mov ecx, 1
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x8c], 0x239b21fd
mov dword [esp + 0x90], 0x27942587
mov dword [esp + 0x94], 0x3b893987
mov dword [esp + 0x98], 0x3f983d83
mov dword [esp + 0x9c], 0x339e3184
mov dword [esp + 0xa0], 0x379035eb
mov dword [esp + 0xa4], 0xbb309ae
mov dword [esp + 0xa8], 0xfab0daf
mov dword [esp + 0xac], 0x3f301ac
mov dword [esp + 0xb0], 0x7f805f1
mov dword [esp + 0xb4], 0x1bb619e8
mov dword [esp + 0xb8], 0x1fab1dc3
mov dword [esp + 0xbc], 0x13ae11a4
mov dword [esp + 0xc0], 0x17a915ab
mov dword [esp + 0xc4], 0xeb46e953
mov dword [esp + 0xc8], 0xef5ced3c
mov dword [esp + 0xcc], 0xe344e15f
mov dword [esp + 0xd0], 0xe75ae55d
mov dword [esp + 0xd4], 0xfb49f95d
mov dword [esp + 0xd8], 0xff21fd50
mov dword [esp + 0xdc], 0xf346f145
mov dword [esp + 0xe0], 0xf749f548
mov dword [esp + 0xe4], 0xcb71c977
mov dword [esp + 0xe8], 0xcf07cd60
mov dword [esp + 0xec], 0xc335c133
mov dword [esp + 0xf0], 0xc705c531
mov dword [esp + 0xf4], 0xdb1cd91e
mov dword [esp + 0xf8], 0xdf2add2c
mov dword [esp + 0xfc], 0xd321d121
mov dword [esp + 0x100], 0xd727d525
mov dword [esp + 0x104], 0xab0ea959
mov dword [esp + 0x108], 0xaf6cad5f
mov dword [esp + 0x10c], 0xa36aa168
mov dword [esp + 0x110], 0xa756a565
mov dword [esp + 0x114], 0xbb4bb948
mov dword [esp + 0x118], 0xbf4abd4c
mov dword [esp + 0x11c], 0xb340b172
mov dword [esp + 0x120], 0xb740b575
mov dword [esp + 0x124], 0x8b7d897e
mov dword [esp + 0x128], 0x8f228d7a
lea ebx, [esp + 0x12c]
mov dword [esp + 0x12c], 0x8180
mov dword [esp + 0x88c], 0
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xa3
ja 0x425eee
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x88c]
mov edx, dword [esp + 0x88c]
movzx edx, byte [esp + edx + 0x8c]
mov esi, ecx
xor esi, 0x60a49348
and ecx, 0xe0a49348
lea ecx, [esi + ecx*2]
xor ecx, edx
mov dword [esp + 0xa8c], ecx
mov ecx, dword [esp + 0xa8c]
add cl, 0x98
mov edx, dword [esp + 0x88c]
mov byte [esp + edx + 0x8c], cl
inc dword [esp + 0x88c]
mov ecx, dword [esp + 0x88c]
cmp ecx, 0xa4
jb 0x425e90
lea edx, [esp + 0x1016]
lea esi, [esp + 0x8c]
mov edi, edx
mov ecx, 0x28
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea edi, [esp + 0x10b6]
mov ecx, 1
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
lea ecx, [esp + 0xe8e]
mov dword [esp + 0x78], ecx
lea ecx, [esp + 0xf30]
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], ebp
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edx
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x3c], 0
cmp ecx, 0x14
setne al
mov esi, dword [esp + 4]
jmp dword [eax*4 + 0x44ad1c]
add ebx, edx
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
je 0x425fa4
cmp eax, esi
jae 0x425fa4
movzx edi, cx
cmp edi, 0x800
mov ecx, 3
sbb ecx, 0
mov edx, 1
cmp edi, 0x80
jb 0x425f70
mov edx, ecx
jmp 0x425f70
lea eax, [ebx + 1]
mov dword [esp + 8], eax
push eax
call fcn.0040c580
add esp, 4
lea ecx, [esp + 0x11fc]
cmp ecx, esi
setb cl
mov dword [esp + 0x2c], eax
test ebx, ebx
jle 0x4260d3
mov eax, dword [esp + 0x2c]
test cl, cl
je 0x4260d3
mov eax, dword [esp + 0x2c]
lea edi, [eax + ebx]
add dword [esp + 8], eax
lea edx, [esp + 0x11fe]
mov dword [esp + 4], ebx
mov dword [esp + 0x40], edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, word [edx - 2]
test cx, cx
je 0x4260d3
cmp cx, 0x7f
ja 0x426020
mov byte [eax], cl
mov ebp, 1
jmp 0x4260c0
mov edi, dword [esp + 8]
sub edi, eax
mov ebx, edi
not ebx
and ebx, 1
and edi, 0xfffffffe
sub edi, ebx
movzx ebx, cx
cmp edi, 2
jb 0x426070
cmp ebx, 0x7ff
ja 0x426070
mov ebx, ecx
shr ebx, 6
add bl, 0xc0
mov byte [eax], bl
and cl, 0x3f
or cl, 0x80
mov byte [eax + 1], cl
mov ebp, 2
mov ebx, dword [esp + 4]
mov edi, dword [esp + 0x40]
jmp 0x4260c0
mov dword [esp + 0xc], ebx
xor ebp, ebp
cmp edi, 3
mov ebx, dword [esp + 4]
mov edi, dword [esp + 0x40]
jb 0x4260c0
mov ebp, dword [esp + 0xc]
mov ebx, ebp
shr ebx, 0xc
or bl, 0xe0
mov byte [eax], bl
shr ebp, 6
mov ebx, ebp
and bl, 0x3f
or bl, 0x80
mov byte [eax + 1], bl
mov ebx, dword [esp + 4]
and cl, 0x3f
or cl, 0x80
mov byte [eax + 2], cl
mov ebp, 3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
add eax, ebp
cmp eax, edi
jae 0x4260d3
lea ecx, [edx + 2]
cmp edx, esi
mov edx, ecx
jb 0x426000
mov byte [eax], 0
mov dword [esp + 0x8c], 0x636699c9
mov dword [esp + 0x90], 0x6f535a5d
mov dword [esp + 0x94], 0x606c6259
mov dword [esp + 0x98], 0x67674e2f
mov dword [esp + 0x9c], 0x70756a6c
mov dword [esp + 0xa0], 0x707c5537
mov dword [esp + 0xa4], 0x427a484a
mov dword [esp + 0xa8], 0x73763f73
mov dword [esp + 0xac], 0xe974
mov dword [esp + 0x88c], 0
mov eax, dword [esp + 0x88c]
cmp eax, 0x23
ja 0x4261ee
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x88c]
mov eax, dword [esp + 0x88c]
movzx eax, byte [esp + eax + 0x8c]
lea edx, [ecx + ecx]
and edx, 0x408dd1fc
mov esi, ecx
xor esi, 0x5fb91701
mov edi, ecx
or edi, 0x2046e8fe
and edi, esi
sub ecx, edx
lea edx, [ecx + edi*2]
lea ecx, [ecx + edi*2]
add ecx, 0xa046e8fe
and ecx, eax
add eax, edx
add eax, 0xa046e8fe
sub eax, ecx
mov edx, 0x21d6f3ff
sub edx, eax
and edx, ecx
not ecx
and ecx, eax
sub ecx, edx
mov dword [esp + 0xa8c], ecx
mov eax, dword [esp + 0xa8c]
add al, 0xa
mov ecx, dword [esp + 0x88c]
mov byte [esp + ecx + 0x8c], al
inc dword [esp + 0x88c]
mov eax, dword [esp + 0x88c]
cmp eax, 0x24
jb 0x426160
lea eax, [esp + 0x8c]
mov ecx, dword [esp + 0x2210]
push ebx
mov esi, dword [esp + 0x30]
push esi
push eax
call fcn.0040d0c0
jmp dword [0x44ada4]
push esi
mov esi, eax
call fcn.0040c590
mov eax, esi
add esp, 4
and al, 1
add esp, 0x21fc
pop esi
pop edi
pop ebx
pop ebp
ret
inc esp
inc edx
add byte [edi], cl
inc ebp
inc edx
add byte [edi], cl
inc ebp
inc edx
add byte [esi], dl
inc ebp
inc edx
add byte [eax], ah
inc ebp
inc edx
add byte [eax], ah
inc ebp
inc edx
add byte [edx], ah
inc ebp
inc edx
add byte [eax], ah
inc ebp
inc edx
add byte [eax + 0x45], bh
inc edx
add ah, ch
inc ebp
inc edx
add byte [ebx], bl
bound eax, qword [edx]
nop
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 ah, ch
inc ebp
inc edx
add byte [ecx], dh
inc esi
inc edx
add byte [eax + 0x46], al
inc edx
add byte [eax + 0x51], ah
inc edx
add byte [ecx + 0x51], bh
inc edx
add byte [eax + 0x60004251], bl
push ecx
inc edx
add byte [ecx + edx*2 + 0x51b00042], ah
inc edx
add byte [eax], dl
push eax
inc edx
add byte [esi + eax*2 + 0x42], ch
add byte [edx + 0x46], dh
inc edx
add bl, ch
inc edi
inc edx
add bl, ch
inc edi
inc edx
add byte [eax + 0x49], ah
inc edx
add byte [eax + 0x46], dl
inc edx
add byte [ecx - 0x7fffbdb7], ah
dec ecx
inc edx
add bl, dl
dec ecx
inc edx
add byte [eax], al
dec edi
inc edx
add byte [edi + 0x4a], cl
inc edx
add byte [ebx + 0x4a], ch
inc edx
add byte [eax + 0x5a00424a], al
dec ebx
inc edx
add byte [eax + 0x4c], ah
inc edx
add byte [eax + 0x4d], dl
inc edx
add byte [esi + ecx*2], bl
inc edx
add byte [eax], al
dec edx
inc edx
add byte [eax + 0x4d], dl
inc edx
add byte [eax + 0x4a], dh
inc edx
add byte [eax + 0x4a], dh
inc edx
add byte [edx + 0x4b], bl
inc edx
add byte [eax + 0x4a], dh
inc edx
add byte [ebx + 0x4b], ch
inc edx
add byte [eax + 0x4b], dh
inc edx
add byte [esi + 0x4c], dh
inc edx
add byte [eax + 0x1000424c], al
push ecx
inc edx
add byte [eax], dl
push ecx
inc edx
add byte [eax], dl
push ecx
inc edx
add byte [edx], dl
push ecx
inc edx
add byte [eax], bl
push ecx
inc edx
add byte [eax + 0xe004245], dh
bound eax, qword [edx]
sbb esp, dword [edx + 0x42]
add byte [eax], al
add byte [eax], al
add byte [ecx + 0x65], ch
inc edx
add byte [eax - 0x5fffbd9b], ah
inc edx
add byte [edx - 0x5dffbd9b], ah
inc edx
add byte [0x1004266], ah
add byte [eax], al
add byte [0xd7004266], ah
inc edx
add byte [esi], ch
inc edx
add byte [eax], ah
imul eax, dword [edx], 0xffffffa1
inc edx
add dl, cl
inc edx
add byte [esi], cl
outsd dx, dword [esi]
inc edx
add byte [eax], ah
push 0x68250042
inc edx
add byte [eax + 0x68], al
inc edx
add byte [eax + 0x68], al
inc edx
add byte [edx + 0x68], al
inc edx
add byte [edx + 0x68], al
inc edx
add byte [edi + 0x68], dh
inc edx
add al, al
push 0x68f00042
inc edx
add byte [esi], cl
outsd dx, dword [esi]
inc edx
add byte [eax], al
imul eax, dword [edx], 0x426902
add ch, byte [ecx + 0x42]
add byte [eax], dl
imul eax, dword [edx], 0x42691c
sbb al, 0x69
inc edx
add byte [ecx + ebp*2], bl
inc edx
add byte [ecx + 0x69], cl
inc edx
add byte [ecx + 0x69], cl
inc edx
add byte [eax - 0x67ffbd97], bl
imul eax, dword [edx], 0x426f0e
shr byte [ecx + 0x42], 0
ret 0x4269