Function at 0xb36bd0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x60
mov esi, dword [ebp + 8]
mov dword [esp + 8], 0xd36dd1b9
mov dword [esp + 0xc], 0xdf41dd49
mov dword [esp + 0x10], 0xdb77d942
mov dword [esp + 0x14], 0xc788c54d
mov dword [esp + 0x18], 0xc36bc154
mov dword [esp + 0x1c], 0xcf63cd5c
mov dword [esp + 0x20], 0xcbc8c9a1
lea edx, [esp + 0x24]
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
xor eax, eax
nop
nop
nop
movzx ecx, byte [esp + eax + 8]
lea edi, [eax - 0x1beafa9d]
lea ebx, [eax + ecx]
add ebx, 0xe4150563
and edi, ecx
add edi, edi
sub ebx, edi
mov dword [esp + 0x40], ebx
mov ecx, dword [esp + 0x40]
add cl, 0x4b
mov byte [esp + eax + 8], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0x24
jb case.default.0xb36ca9
lea edi, [esp + 0x40]
lea eax, [esp + 8]
mov ebx, eax
mov ecx, 7
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
mov ebx, eax
lea edi, [esp + 0x5c]
xor ecx, ecx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
lea ecx, [esp + 0x30]
push ecx
push 8
push eax
push 0xd
lea eax, [esp + 0x50]
push eax
push 0
call dword [0xb4b5b0]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0xb48d38]
mov dword [esp + 8], 0x3a0043
mov dword [esp + 0xc], 0x5c
mov dword [esp + 4], 0
push 0xaa14ca30
push dword [0xb4b5a8]
call fcn.00b3e2e0
add esp, 8
lea ecx, [esp + 4]
push 0
push 0
push 0
push 0
push ecx
push 0
push 0
push ebx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0xb48d40]
xor eax, eax
xor ecx, ecx
cmp eax, 4
setb cl
jmp dword [ecx*4 + 0xb48d48]
jmp dword [0xb48d5c]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0xb48d60]
lea ecx, [esp + eax*4]
add ecx, 0x2c
jmp 0xb36d30
lea ecx, [esp + 4]
mov ecx, dword [ecx]
imul edx, ecx, 0x1a5845
xor edx, 0xebde8a13
imul ebx, ecx, 0x34b08a
and ebx, 0xd7bd1426
lea edi, [esi + 8]
add ebx, edx
mov dword [esp + eax*4 + 0x30], ebx
mov byte [esi + 8], 0
je 0xb36da1
cmp ebx, 0x100
jb 0xb36daa
mov ecx, edi
mov esi, edi
mov edx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, bl
movzx edi, word [edi + edi + str.000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF]
mov word [esi - 2], di
add esi, 0xfffffffe
shr edx, 8
cmp ebx, 0xffff
mov ebx, edx
ja 0xb36d70
cmp edx, 0xf
ja 0xb36db5
movzx edx, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov byte [esi - 1], dl
dec esi
jmp 0xb36ddd
mov byte [esi + 7], 0x30
add esi, 7
jmp 0xb36ddf
mov edx, ebx
mov ecx, edi
mov esi, edi
cmp edx, 0xf
jbe 0xb36d94
mov edi, edx
or edi, 2
mov ebx, edx
and ebx, 2
imul edi, ebx
xor ebx, 2
and edx, 0xfffffd
imul edx, ebx
movzx edx, word [edx + edi + str.000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF]
mov word [esi - 2], dx
add esi, 0xfffffffe
mov edi, ecx
mov edx, 0xfffffff7
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [esi + edx + 9], 0
lea edx, [edx + 1]
jne case.default.0xb36e03
xor ebx, ebx
xor ecx, ecx
cmp edx, ebx
setne cl
jmp dword [ecx*4 + 0xb48d68]
mov byte [esi + ebx - 1], 0x30
dec ebx
xor ecx, ecx
cmp edx, ebx
setne cl
jmp dword [ecx*4 + 0xb48d68]
inc eax
xor edx, edx
cmp eax, 4
setb dl
mov esi, edi
jmp dword [edx*4 + 0xb48d48]
mov eax, dword [case.0xb36ca9.16]
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [case.0xb36ca9.20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
jmp 0xb371bd
mov eax, dword [case.0xb36ca9.26]
jmp eax
push 0x400
call fcn.00b3a780
add esp, 4
mov edi, eax
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x18], 0x44b9e985
mov eax, dword [ebp - 0x18]
add eax, 0x7a
movzx ecx, al
mov dword [ebp - 0x18], 0x44b9e985
mov eax, dword [ebp - 0x18]
shl eax, 8
add eax, 0x7a00
movzx eax, ax
or eax, ecx
mov dword [ebp - 0x18], 0x44b9e985
mov ecx, dword [ebp - 0x18]
shl ecx, 0x10
add ecx, 0x7a0000
mov dword [ebp - 0x18], 0x44b9e985
mov edx, dword [ebp - 0x18]
shl edx, 0x18
and ecx, 0xff0000
or ecx, eax
lea eax, [edx + ecx]
add eax, 0x7a000000
mov dword [ebp - 0x18], 0x44b9e9ce
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9cf
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9d0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9d1
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9d2
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9d3
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9d4
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], 0x44b9e9d5
mov ecx, dword [ebp - 0x18]
mov edx, dword [0xb4b5b4]
test edx, edx
je case.default.0xb36fb4
mov dword [ebp - 0x1c], ebx
xor ebx, ebx
mov ecx, dword [0xb4b5b8]
cmp dword [ecx + ebx*8], 0xd75bc899
je 0xb36f80
inc ebx
cmp edx, ebx
jne 0xb36f70
jmp case.default.0xb36fb4
mov edx, dword [ecx + ebx*8 + 4]
cmp edx, eax
je case.default.0xb36fb4
lea eax, [ebp - 0x18]
push 0x2f
push 0x400
push edi
push eax
push dword [ebp - 0x1c]
push 5
push dword [0xb4b5bc]
push edx
call fcn.00b3c4d0
add esp, 0x20
not eax
shr eax, 0x1f
mov dword [ebp - 0x1c], 0
jmp dword [eax*4 + 0xb48da8]
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x1c], 0
cmp ecx, dword [edi]
setb al
xor ebx, ebx
jmp dword [eax*4 + 0xb48db0]
jmp dword [0xb48dcc]
mov eax, dword [edi + ebx*4 + 4]
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov ecx, esi
push 0
push eax
call fcn.00b3ac30
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [edi + ebx*4 + 4]
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov ecx, esi
push 0
push eax
call fcn.00b3ac30
jmp dword [0xb48dd0]
xor eax, eax
mov ecx, dword [ebp + 0xc]
neg ecx
mov ecx, dword [ebp + 0x10]
sbb eax, ecx
setl al
movzx eax, al
shl eax, 0x14
or eax, 1
mov ecx, esi
push eax
call fcn.00b3ac50
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0xb48dd8]
jmp 0xb37087
mov ecx, esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 0
call fcn.00b3aed0
test eax, eax
setns al
mov dword [ebp - 0x1c], eax
mov ecx, esi
call fcn.00b3adc0
mov eax, dword [case.0xb36fb4.17]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
inc ebx
xor eax, eax
cmp ebx, dword [edi]
setb al
jmp dword [eax*4 + 0xb48db0]
jmp dword [0xb48dc0]
push edi
call fcn.00b3a870
add esp, 4
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0x44b9e985
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e985
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e985
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e985
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9ce
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9cf
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9d0
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9d1
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9d2
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9d3
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9d4
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0x44b9e9d5
mov esi, dword [ebp - 0x10]
mov esi, dword [0xb4b5b4]
test esi, esi
je 0xb371ba
add ebx, 0x7a
movzx ebx, bl
shl edi, 8
add edi, 0x7a00
movzx edi, di
or edi, ebx
shl ecx, 0x10
add ecx, 0x7a0000
shl edx, 0x18
and ecx, 0xff0000
or ecx, edi
add ecx, edx
add ecx, 0x7a000000
xor edx, edx
mov edi, dword [0xb4b5b8]
nop
nop
nop
nop
cmp dword [edi + edx*8], 0xa3c1f363
je 0xb371a0
inc edx
cmp esi, edx
jne 0xb37190
jmp 0xb371ba
mov edx, dword [edi + edx*8 + 4]
cmp edx, ecx
je 0xb371ba
push eax
push 1
push dword [0xb4b5bc]
push edx
call fcn.00b3c4d0
add esp, 0x10
mov eax, dword [ebp - 0x1c]
and al, 1
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.00b1c6c0
mov eax, dword [esp + 0xc]
add eax, 2
mov dword [esp + 0x2b8], 0
mov ecx, dword [esp + 0x2bc]
mov edx, dword [esp + 0x2b8]
mov ecx, dword [ecx + edx*4]
jmp ecx
call fcn.00b1c6c0
mov dword [esp + 0x110], 1
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x110]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x4cc]
mov ax, word [eax]
xor ecx, ecx
sub ax, 0x5c
sete cl
mov dword [esp + 0x250], ecx
mov eax, dword [esp + 0x254]
mov ecx, dword [esp + 0x250]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x4cc]
mov ax, word [eax + 2]
xor ecx, ecx
test ax, ax
sete cl
mov dword [esp + 0x248], ecx
mov eax, dword [esp + 0x24c]
mov ecx, dword [esp + 0x248]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x1f0]
mov ecx, dword [esp + 0x1f4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x1b0]
mov ecx, dword [esp + 0x1b4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x4cc]
mov ax, word [eax]
xor ecx, ecx
test ax, ax
sete cl
mov dword [esp + 0x368], ecx
mov eax, dword [esp + 0x36c]
mov ecx, dword [esp + 0x368]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov eax, dword [ecx + eax*4]
jmp eax
ret
call fcn.00b1c6c0
mov eax, dword [esp + 0xc]
mov cx, word [eax + 2]
xor eax, eax
test cx, cx
sete cl
mov dword [esp + 0x3b0], 1
mov edx, dword [esp + 0x3b4]
mov esi, dword [esp + 0x3b0]
mov edx, dword [edx + esi*4]
jmp edx
call fcn.00b1c6c0
xor eax, eax
mov ecx, esi
sub ecx, edi
seta cl
mov dword [esp + 0x378], 1
mov edx, dword [esp + 0x37c]
mov ebx, dword [esp + 0x378]
mov edx, dword [edx + ebx*4]
jmp edx
mov al, byte [esp + 0x1a]
mov bl, al
and ebx, 1
mov dword [esp + 0x138], ebx
mov eax, dword [esp + 0x13c]
mov ecx, dword [esp + 0x138]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x4cc]
add eax, 2
mov dword [esp], eax
mov dword [esp + 4], 0xb436ec
call fcn.00b38f40
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 0x258], ecx
mov eax, dword [esp + 0x25c]
mov ecx, dword [esp + 0x258]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov eax, dword [esp + 0x4cc]
mov word [eax], 0
mov dword [esp + 0x490], 0
mov eax, dword [esp + 0x494]
mov ecx, dword [esp + 0x490]
mov eax, dword [eax + ecx*4]
jmp eax
mov al, byte [esp + 0x1b]
mov bl, al
and ebx, 1
mov dword [esp + 0x310], ebx
mov eax, dword [esp + 0x314]
mov ecx, dword [esp + 0x310]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x14]
add eax, 0xfffffffe
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x300]
mov ecx, dword [esp + 0x304]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0xc]
mov ax, word [eax]
xor ecx, ecx
sub ax, 0x5c
sete cl
mov dword [esp + 0x3d8], ecx
mov eax, dword [esp + 0x3dc]
mov ecx, dword [esp + 0x3d8]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x1c]
xor ecx, ecx
sub eax, 2
sete cl
mov dword [esp + 0x3c8], ecx
mov eax, dword [esp + 0x3cc]
mov ecx, dword [esp + 0x3c8]
mov eax, dword [eax + ecx*4]
jmp eax
mov ecx, dword [esp + 0x338]
mov edx, dword [esp + 0x33c]
mov ecx, dword [edx + ecx*4]
jmp ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.00b1e320
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
lea eax, [ecx + eax*2 - 2]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
xor ecx, 1
mov edx, eax
not edx
or eax, 0xfffffffe
and eax, ecx
mov esi, eax
and esi, 0x7ffffffd
and edx, 2
imul edx, esi
mov esi, eax
and esi, 2
or eax, 2
imul eax, esi
add eax, edx
sub eax, ecx
mov ecx, dword [esp + 0xc]
lea eax, [ecx + eax*2]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x1a4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x2c0], 1
mov eax, dword [esp + 0x2c4]
mov ecx, dword [esp + 0x2c0]
mov eax, dword [eax + ecx*4]
jmp eax
xlatb
cmp al, 0x78
mov dl, 0x8b
inc esp
and al, 0x60
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x4cc]
mov word [eax + 4], 0x5c
mov eax, dword [esp + 0x4cc]
mov word [eax + 6], 0
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x11c]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00b1c6c0
mov ecx, dword [esp + 0x1c]
xor eax, eax
sub ecx, 3
sete cl
mov dword [esp + 0x2d8], 1
mov edx, dword [esp + 0x2dc]
mov esi, dword [esp + 0x2d8]
mov edx, dword [edx + esi*4]
jmp edx
mov eax, dword [esp + 0xc]
mov ax, word [eax + 4]
xor ecx, ecx
sub ax, 0x5c
sete cl
mov dword [esp + 0x1c0], ecx
mov eax, dword [esp + 0x1c4]
mov ecx, dword [esp + 0x1c0]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x240], 1
mov eax, dword [esp + 0x244]
mov ecx, dword [esp + 0x240]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x180], 1
mov eax, dword [esp + 0x184]
mov ecx, dword [esp + 0x180]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x20]
mov ax, word [eax]
xor ecx, ecx
sub ax, 0x5c
sete cl
mov dword [esp + 0x1e0], ecx
mov eax, dword [esp + 0x1e4]
mov ecx, dword [esp + 0x1e0]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov eax, dword [esp + 0x4cc]
mov ax, word [eax]
mov dword [esp + 0x340], 0
mov ecx, dword [esp + 0x344]
mov edx, dword [esp + 0x340]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov al, cl
and eax, 1
mov dword [esp + 0x2d0], eax
mov eax, dword [esp + 0x2d4]
mov ecx, dword [esp + 0x2d0]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov eax, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 4], 0x5c
call fcn.00b38f00
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x24]
xor eax, eax
test ecx, ecx
sete cl
mov dword [esp + 0x410], 0
mov edx, dword [esp + 0x414]
mov esi, dword [esp + 0x410]
mov edx, dword [edx + esi*4]
jmp edx
mov eax, dword [esp + 0xc]
mov ax, word [eax]
xor ecx, ecx
sub ax, 0x2e
sete cl
mov dword [esp + 0x3c0], ecx
mov eax, dword [esp + 0x3c4]
mov ecx, dword [esp + 0x3c0]
mov eax, dword [eax + ecx*4]
jmp eax
mov al, cl
and eax, 1
mov dword [esp + 0x3a8], eax
mov eax, dword [esp + 0x3ac]
mov ecx, dword [esp + 0x3a8]
mov eax, dword [eax + ecx*4]
jmp eax
mov ecx, dword [esp + 0x2b0]
mov edx, dword [esp + 0x2b4]
mov ecx, dword [edx + ecx*4]
jmp ecx
call fcn.00b1c6c0
mov dword [esp + 0x360], 1
mov eax, dword [esp + 0x364]
mov ecx, dword [esp + 0x360]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov ax, word [esi]
mov dword [esp + 0x280], 1
mov ecx, dword [esp + 0x284]
mov edx, dword [esp + 0x280]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov eax, dword [esp + 0x4cc]
mov ax, word [eax + 4]
xor ecx, ecx
test ax, ax
sete cl
mov dword [esp + 0x120], ecx
mov eax, dword [esp + 0x124]
mov ecx, dword [esp + 0x120]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0xc]
mov ax, word [eax]
xor ecx, ecx
sub ax, 0x2e
sete cl
mov dword [esp + 0x2c8], ecx
mov eax, dword [esp + 0x2cc]
mov ecx, dword [esp + 0x2c8]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x438]
mov ecx, dword [esp + 0x43c]
mov eax, dword [ecx + eax*4]
jmp eax
push ebx
xchg esi, eax
xchg esi, eax
in eax, dx
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov eax, dword [ecx + eax*4]
jmp eax
mov ecx, dword [esp + 0x278]
mov edx, dword [esp + 0x27c]
mov ecx, dword [edx + ecx*4]
jmp ecx
add dword [edi + 0x448b16b3], 0x24
xor byte [ebx - 0x74cbdbb4], cl
add al, 0x81
jmp eax
mov eax, dword [esp + 0x4cc]
mov ax, word [eax + 2]
xor ecx, ecx
sub ax, 0x3a
sete cl
mov dword [esp + 0x128], ecx
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x128]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x1f8], 1
mov eax, dword [esp + 0x1fc]
mov ecx, dword [esp + 0x1f8]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov byte [esp + 0x13], 1
mov dword [esp + 0x108], 1
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x108]
mov eax, dword [eax + ecx*4]
jmp eax
mov cl, al
and ecx, 1
mov dword [esp + 0x350], ecx
mov eax, dword [esp + 0x354]
mov ecx, dword [esp + 0x350]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x2e0], 0
mov eax, dword [esp + 0x2e4]
mov ecx, dword [esp + 0x2e0]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0xf0], 1
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0xf0]
mov eax, dword [eax + ecx*4]
jmp eax
sub eax, dword [ebx + ecx*2 - 0x67ec1eec]
or byte [ebx + 0xb02484], 0
add byte [ebx + 0xb4248c], cl
add byte [eax], al
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
mov eax, dword [ecx + eax*4]
jmp eax
mov al, cl
and eax, 1
mov dword [esp + 0x408], eax
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x3f8]
mov ecx, dword [esp + 0x3fc]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0xd8], 1
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xd8]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x140], 1
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x140]
mov eax, dword [eax + ecx*4]
jmp eax
mov ecx, dword [esp + 0x230]
mov edx, dword [esp + 0x234]
mov ecx, dword [edx + ecx*4]
jmp ecx
add al, 0xcd
mov eax, dword ss:[esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov eax, dword [ecx + eax*4]
jmp eax
mov ecx, dword [esp + 0x158]
mov edx, dword [esp + 0x15c]
mov ecx, dword [edx + ecx*4]
jmp ecx
aam 0xd4
inc ebp
push ds
mov dword [ebx + 0x2c], edi
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
mov eax, dword [ecx + eax*4]
jmp eax
and esp, 0xf8c2501
push 0x31
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov eax, dword [ecx + eax*4]
jmp eax
mov esi, dword [esp + 0xc]
mov dword [esp], esi
call fcn.00b19f00
lea eax, [esi + eax*2]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x400]
mov ecx, dword [esp + 0x404]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov eax, dword [ecx + eax*4]
jmp eax
sbb eax, 0xbf3e1cbb
dec esi
pop esi
push edx
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x498], 1
mov eax, dword [esp + 0x49c]
mov ecx, dword [esp + 0x498]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
mov eax, dword [ecx + eax*4]
add al, 0x81
jmp eax
mov al, cl
and eax, 1
mov dword [esp + 0x370], eax
mov eax, dword [esp + 0x374]
mov ecx, dword [esp + 0x370]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x3b8], 1
mov eax, dword [esp + 0x3bc]
mov ecx, dword [esp + 0x3b8]
mov eax, dword [eax + ecx*4]
jmp eax
dec eax
mov ecx, 0x24448b1b
jo 0xb38952
dec esp
and al, 0x74
mov eax, dword [ecx + eax*4]
jmp eax
sub byte [ebp + ebp*2 + 0xe], ch
xor ebx, ebp
mov ebp, 0x24448b77
or al, 0x89
add al, 0x24
mov dword [esp + 4], 0x5c
call fcn.00b38f00
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x418], 0
mov eax, dword [esp + 0x41c]
mov ecx, dword [esp + 0x418]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x348], 0
mov eax, dword [esp + 0x34c]
mov ecx, dword [esp + 0x348]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0xc]
add eax, 2
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1b8]
mov ecx, dword [esp + 0x1bc]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x2f8]
mov ecx, dword [esp + 0x2fc]
mov eax, dword [ecx + eax*4]
jmp eax
nop
and eax, 0x848b4f39
and al, 0xcc
add al, 0
add byte [ebx + 0x48902c0], al
and al, 0xc7
inc esp
and al, 4
in al, dx
mov ah, 0
call fcn.00b38f40
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x4cc]
xor ecx, ecx
test eax, eax
sete cl
mov dword [esp + 0x4a8], ecx
mov eax, dword [esp + 0x4ac]
mov ecx, dword [esp + 0x4a8]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0xc]
add eax, 2
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x3a0]
mov ecx, dword [esp + 0x3a4]
mov eax, dword [ecx + eax*4]
jmp eax
std
push eax
lds eax, [ecx]
xchg ebp, eax
mov cl, 0xe1
std
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0xc]
add eax, 4
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x2f0]
mov ecx, dword [esp + 0x2f4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x1c8]
mov ecx, dword [esp + 0x1cc]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov eax, dword [ecx + eax*4]
jmp eax
add dword [ebx + 0x448b871d], esi
and al, 0x78
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00b1c6c0
mov ax, word [esi]
mov dword [esp + 0x160], 1
mov ecx, dword [esp + 0x164]
mov edx, dword [esp + 0x160]
mov ecx, dword [ecx + edx*4]
jmp ecx
call fcn.00b1c6c0
mov esi, dword [esp + 0x4cc]
mov dword [esp + 0x178], 0
mov eax, dword [esp + 0x17c]
mov ecx, dword [esp + 0x178]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x488]
mov ecx, dword [esp + 0x48c]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x14]
mov word [eax], 0x5c
mov eax, dword [esp + 0x14]
add eax, 2
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xc]
add eax, 2
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x3d0]
mov ecx, dword [esp + 0x3d4]
mov eax, dword [ecx + eax*4]
jmp eax
mov byte [esp + 0x13], 0
mov eax, dword [esp + 0x4a0]
mov ecx, dword [esp + 0x4a4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x104]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1d8]
mov ecx, dword [esp + 0x1dc]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x4cc]
mov word [eax], 0x5c
mov eax, dword [esp + 0x4cc]
mov word [eax + 2], 0
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0x134]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x20]
add eax, 0xfffffffe
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1d0]
mov ecx, dword [esp + 0x1d4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x4cc]
mov ax, word [eax + 2]
xor ecx, ecx
test ax, ax
sete cl
mov dword [esp + 0x308], ecx
mov eax, dword [esp + 0x30c]
mov ecx, dword [esp + 0x308]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov dword [esp + 0x440], 1
mov eax, dword [esp + 0x444]
mov ecx, dword [esp + 0x440]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00b1c6c0
mov eax, dword [esp + 0x4cc]
add eax, 2
mov dword [esp], eax
mov dword [esp + 4], 0xb436ec
call fcn.00b38f40
xor ecx, ecx
test eax, eax
setne al
mov dword [esp + 0x358], 0
mov edx, dword [esp + 0x35c]
mov esi, dword [esp + 0x358]
mov edx, dword [edx + esi*4]
jmp edx
call fcn.00b1c6c0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x238], 1
mov ecx, dword [esp + 0x23c]
mov edx, dword [esp + 0x238]
mov ecx, dword [ecx + edx*4]
jmp ecx
call fcn.00b1c6c0
mov dword [esp + 0x318], 0
mov eax, dword [esp + 0x31c]
mov ecx, dword [esp + 0x318]
mov eax, dword [eax + ecx*4]
jmp eax
mov esi, dword [esp + 0x4cc]
mov eax, dword [esp + 0x290]
mov ecx, dword [esp + 0x294]
mov eax, dword [ecx + eax*4]
jmp eax