Function at 0x493d28
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffbbc
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x324], ebx
mov dword [ebp - 0x328], ebx
mov dword [ebp - 0x340], ebx
mov dword [ebp - 0x344], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x208], ebx
mov dword [ebp - 0x20c], ebx
mov byte [ebp - 0x1f1], cl
mov dword [ebp - 0x1f0], edx
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x1f0]
call fcn.004036f8
xor eax, eax
push ebp
push 0x495b8e
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x1f0]
lea eax, [ebp - 0x1d8]
call fcn.00404185
lea eax, [ebp - 0x1d8]
call fcn.0040473b
call fcn.00402754
test eax, eax
je 0x493e05
push 0
lea eax, [ebp - 0x324]
push eax
lea edx, [ebp - 0x328]
mov eax, 0x1cd
call fcn.00406264
mov edx, dword [ebp - 0x328]
mov ecx, dword [ebp - 0x1f0]
mov eax, dword [ebp - 0x1dc]
call fcn.0048d888
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
mov byte [ebp - 0x1f2], 0
jmp 0x495b3d
xor edx, edx
push ebp
push 0x495b36
push dword fs:[edx]
mov dword fs:[edx], esp
lea eax, [ebp - 0x1d8]
call fcn.004043f8
call fcn.004026e8
mov edx, dword [ebp - 0x1dc]
mov edx, dword [edx + 0x278]
movzx edx, word [edx + 0xfe]
mov ecx, edx
cdq
idiv ecx
inc eax
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x278]
xor edx, edx
call fcn.0044129c
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x278]
mov dl, 1
call fcn.004152f0
mov dx, 0xfff5
mov eax, dword [reloc.user32.dll_CharUpperBuffA]
call fcn.00425c90
mov ebx, 1
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 8], eax
xor eax, eax
mov dword [ebp - 0x1ec], eax
mov byte [0x4a070c], 0
mov byte [ebp - 0x1f2], 1
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
cmp dword [ebp - 0x1ec], 0
jne 0x493ede
cmp byte [ebp - 0x201], 0x57
jne 0x493ede
mov eax, dword [ebp - 0x1dc]
mov dl, byte [ebp - 0x201]
mov byte [eax + ebx + 0x2ab], dl
inc ebx
mov esi, 0x51
jmp 0x493f7e
cmp dword [ebp - 0x1ec], 0
jne 0x493ef0
cmp byte [ebp - 0x201], 0x55
je 0x493f02
cmp dword [ebp - 0x1ec], 0
jne 0x493f1d
cmp byte [ebp - 0x201], 0x56
jne 0x493f1d
mov eax, dword [ebp - 0x1dc]
mov dl, byte [ebp - 0x201]
mov byte [eax + ebx + 0x2ab], dl
inc ebx
mov esi, 0x41
jmp 0x493f7e
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1a2
call fcn.00406264
lea eax, [ebp - 0x324]
mov edx, 0x495bb4
call fcn.0040354c
lea eax, [ebp - 0x324]
mov edx, dword [ebp - 0x1dc]
mov edx, dword [edx + 0x3d4]
call fcn.0040354c
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
mov byte [ebp - 0x1f2], 0
jmp 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, ebx
dec eax
cmp eax, dword [ebp - 0x1ec]
jne 0x493fb2
mov eax, dword [ebp - 0x1dc]
mov dl, byte [ebp - 0x201]
mov byte [eax + ebx + 0x2ab], dl
inc ebx
jmp 0x494013
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1a3
call fcn.00406264
lea eax, [ebp - 0x324]
mov edx, 0x495bc0
call fcn.0040354c
lea eax, [ebp - 0x324]
mov edx, dword [ebp - 0x1dc]
mov edx, dword [edx + 0x3d4]
call fcn.0040354c
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
mov byte [ebp - 0x1f2], 0
jmp 0x495b0d
cmp esi, ebx
jne 0x493f7e
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x2ac], 0x55
jne 0x49417d
mov eax, dword [ebp - 0x1dc]
mov al, byte [eax + 0x2b6]
mov edx, dword [ebp - 0x1dc]
mov byte [edx + 0x2b7], al
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2b6], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2b8], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2da], 0xd
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2db], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2dc], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2dd], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2de], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2df], 0xe1
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e0], 1
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e1], 0xa
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e2], 0xa
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e3], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e4], 0x3f
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e5], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e6], 0x3f
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e7], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e8], 0x3f
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2e9], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2ea], 0x3f
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2eb], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2ec], 0x3f
mov eax, 1
mov edx, dword [ebp - 0x1dc]
mov byte [edx + eax + 0x2ec], 0
inc eax
cmp eax, 0xf
jne 0x49415c
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2fb], 0xff
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x2ac], 0x56
jne 0x4941cc
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2eb], 0
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2ec], 0x4f
mov eax, 1
mov edx, dword [ebp - 0x1dc]
mov byte [edx + eax + 0x2ec], 0
inc eax
cmp eax, 0xf
jne 0x4941ab
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x2fb], 0xff
cmp byte [ebp - 0x1f1], 0
jne 0x4941e1
mov eax, dword [0x4a0718]
mov byte [eax + 0x1062d0], 0
cmp byte [ebp - 0x1f1], 0
jne 0x4941f6
mov eax, dword [0x4a0718]
mov byte [eax + 0x10631c], 0
cmp byte [ebp - 0x1f1], 0
jne 0x494269
xor ebx, ebx
lea eax, [ebx + ebx*2]
mov edx, dword [0x4a0718]
mov byte [edx + eax + 0x105fd3], 0xff
mov edx, dword [0x4a0718]
mov byte [edx + eax + 0x105fd4], 0xff
mov edx, dword [0x4a0718]
mov byte [edx + eax + 0x105fd5], 0xff
inc ebx
cmp ebx, 0x20
jne 0x494201
xor ebx, ebx
lea eax, [ebx + ebx*2]
mov edx, dword [0x4a0718]
mov byte [edx + eax + 0x106033], 0xff
mov edx, dword [0x4a0718]
mov byte [edx + eax + 0x106034], 0xff
mov edx, dword [0x4a0718]
mov byte [edx + eax + 0x106035], 0xff
inc ebx
cmp ebx, 0x10
jne 0x494236
mov eax, dword [ebp - 0x1dc]
mov byte [eax + 0x3da], 0
push ebp
lea edx, [ebp - 0x202]
lea eax, [ebp - 0x21c]
call fcn.00493acc
pop ecx
cmp dword [ebp - 0x21c], 0xffff
je 0x495b0d
mov eax, dword [ebp - 0x1ec]
cmp eax, dword [ebp - 0x21c]
je 0x4942de
mov eax, dword [ebp - 0x1ec]
cmp eax, dword [ebp - 0x21c]
je 0x4942de
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
mov eax, dword [ebp - 0x1ec]
cmp eax, dword [ebp - 0x21c]
jne 0x4942b5
mov eax, dword [ebp - 0x1ec]
cmp eax, dword [ebp - 0x21c]
jne 0x4942de
xor eax, eax
mov al, byte [ebp - 0x202]
cmp eax, 9
ja case.0x4942fd.0
jmp dword [eax*4 + 0x494304]
cmp byte [ebp - 0x1f1], 0
je 0x494347
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x4947a6
mov byte [ebp - 0x31d], 0
mov byte [ebp - 0x31c], 0
mov eax, 0x80
lea edi, [ebp - 0x31b]
mov byte [edi], 0
inc edi
dec eax
jne 0x494360
mov byte [ebp - 0x31d], 0
mov byte [ebp - 0x31c], 0
xor eax, eax
mov dword [ebp - 0x1f8], eax
xor ebx, ebx
imul eax, dword [ebp - 0x1f8], 0x2020
mov edx, dword [0x4a0718]
lea eax, [edx + eax*8]
mov edx, ebx
shl edx, 8
add edx, ebx
lea edi, [eax + edx + 0x4ed3]
lea esi, [ebp - 0x31d]
mov ecx, 0x40
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
inc ebx
cmp ebx, 0x100
jne 0x49437f
inc dword [ebp - 0x1f8]
cmp dword [ebp - 0x1f8], 0x10
jne 0x49437d
xor eax, eax
mov dword [ebp - 0x1f8], eax
mov edi, 0x49f488
mov eax, dword [0x4a0718]
mov edx, dword [ebp - 0x1f8]
mov cl, byte [edi]
mov byte [eax + edx + 0x105ed3], cl
inc dword [ebp - 0x1f8]
inc edi
cmp dword [ebp - 0x1f8], 0x100
jne 0x4943d3
mov esi, dword [ebp - 0x1ec]
dec esi
cmp byte [ebp - 0x201], 0xe0
jb 0x4945b2
cmp byte [ebp - 0x201], 0xef
ja 0x4945b2
cmp byte [ebp - 0x201], 0xff
je 0x4946d5
mov al, byte [ebp - 0x201]
and al, 0xf
and eax, 0xff
mov dword [ebp - 0x200], eax
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
xor ebx, ebx
mov bl, byte [ebp - 0x201]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, ebx
shl eax, 8
xor edx, edx
mov dl, byte [ebp - 0x201]
add eax, edx
mov ebx, eax
xor eax, eax
mov dword [ebp - 0x1fc], eax
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
inc dword [ebp - 0x1fc]
xor eax, eax
mov al, byte [ebp - 0x201]
mov dword [ebp - 0x1f8], eax
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
inc dword [ebp - 0x1fc]
mov al, byte [ebp - 0x201]
mov byte [ebp - 0x31d], al
test al, al
je 0x494560
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
inc dword [ebp - 0x1fc]
mov al, byte [ebp - 0x201]
mov byte [ebp - 0x31c], al
movzx esi, byte [ebp - 0x31d]
test esi, esi
jle 0x49452b
lea edi, [ebp - 0x31b]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov al, byte [ebp - 0x201]
mov byte [edi], al
inc edi
dec esi
jne 0x49450c
imul eax, dword [ebp - 0x200], 0x2020
mov edx, dword [0x4a0718]
lea eax, [edx + eax*8]
mov edx, dword [ebp - 0x1f8]
mov ecx, edx
shl edx, 8
add edx, ecx
lea edi, [eax + edx + 0x4ed3]
lea esi, [ebp - 0x31d]
mov ecx, 0x40
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
cmp dword [ebp - 0x1f8], 0xff
je 0x494587
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x494587
cmp ebx, dword [ebp - 0x1fc]
jne 0x494482
mov esi, dword [ebp - 0x1ec]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
cmp byte [ebp - 0x201], 0xff
jne 0x494428
jmp 0x4946d5
mov esi, dword [ebp - 0x1ec]
dec esi
jmp 0x4946bd
xor eax, eax
mov al, byte [ebp - 0x201]
mov dword [ebp - 0x1f8], eax
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov al, byte [ebp - 0x201]
and al, 0xf
and eax, 0xff
mov dword [ebp - 0x200], eax
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov al, byte [ebp - 0x201]
mov byte [ebp - 0x31d], al
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov al, byte [ebp - 0x201]
mov byte [ebp - 0x31c], al
movzx esi, byte [ebp - 0x31d]
test esi, esi
jle 0x494660
lea edi, [ebp - 0x31b]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov al, byte [ebp - 0x201]
mov byte [edi], al
inc edi
dec esi
jne 0x494641
imul eax, dword [ebp - 0x200], 0x2020
mov edx, dword [0x4a0718]
lea eax, [edx + eax*8]
mov edx, dword [ebp - 0x1f8]
mov ecx, edx
shl edx, 8
add edx, ecx
lea edi, [eax + edx + 0x4ed3]
lea esi, [ebp - 0x31d]
mov ecx, 0x40
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x1ec]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x4946d5
lea eax, [esi + 1]
cmp eax, dword [ebp - 0x1ec]
jne 0x4946d5
cmp byte [ebp - 0x201], 0xff
jne 0x4945be
lea eax, [esi + 1]
cmp eax, dword [ebp - 0x1ec]
jne case.0x4942fd.0
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
add esi, 2
cmp esi, dword [ebp - 0x1ec]
jne case.0x4942fd.0
cmp byte [ebp - 0x201], 0
jne case.0x4942fd.0
mov dword [ebp - 0x1f8], 0x21
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [0x4a0718]
mov edx, dword [ebp - 0x1f8]
mov cl, byte [ebp - 0x201]
mov byte [eax + edx + 0x105ed3], cl
inc dword [ebp - 0x1f8]
cmp dword [ebp - 0x1f8], 0xb0
jne 0x49471d
mov dword [ebp - 0x1f8], 0xf0
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [0x4a0718]
mov edx, dword [ebp - 0x1f8]
mov cl, byte [ebp - 0x201]
mov byte [eax + edx + 0x105ed3], cl
inc dword [ebp - 0x1f8]
cmp dword [ebp - 0x1f8], 0x100
jne 0x494764
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x4947cc
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x494bce
mov eax, dword [0x4a06b4]
mov byte [eax + 0x30c], 0
mov eax, dword [0x4a06b4]
mov eax, dword [eax + 0x204]
xor edx, edx
call fcn.0042caa8
cmp dword [ebp + 8], 0
jne 0x49481d
mov eax, dword [0x4a0718]
mov eax, dword [eax + 0x1b4]
mov eax, dword [eax + 0xfc]
mov edx, dword [eax]
call dword [edx + 0x38]
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x234]
mov eax, dword [eax + 0xfc]
mov edx, dword [eax]
call dword [edx + 0x38]
mov esi, dword [ebp - 0x1ec]
dec esi
mov dword [ebp - 0x216], 0x2e2e2e03
jmp 0x494b25
cmp byte [ebp - 0x201], 0xff
je case.0x4942fd.0
mov byte [ebp - 0x211], 0
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494b37
cmp byte [ebp - 0x201], 0x39
ja 0x494b37
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494b37
cmp byte [ebp - 0x201], 0x39
ja 0x494b37
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494b37
cmp byte [ebp - 0x201], 0x39
ja 0x494b37
mov edx, 0x495bc4
lea eax, [ebp - 0x334]
call fcn.004028dc
lea edx, [ebp - 0x211]
lea eax, [ebp - 0x334]
mov cl, 5
call fcn.004028ac
lea edx, [ebp - 0x334]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028f8
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
movzx edi, byte [ebp - 0x201]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
xor eax, eax
mov al, byte [ebp - 0x201]
shl eax, 8
add edi, eax
lea eax, [ebp - 0x208]
call fcn.004033d0
mov esi, edi
test esi, esi
jle 0x4949e3
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x324]
mov dl, byte [ebp - 0x201]
call fcn.004034e0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
call fcn.0040354c
dec esi
jne 0x4949ab
lea eax, [ebp - 0x324]
lea edx, [ebp - 0x211]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
cmp byte [ebp - 0x1f1], 0
seta cl
mov eax, dword [0x4a06b4]
call fcn.0046976c
test al, al
je 0x494ade
mov eax, dword [ebp - 0x208]
call fcn.00403544
test eax, eax
je 0x494ade
lea eax, [ebp - 0x208]
call fcn.00493cc8
lea edx, [ebp - 0x211]
lea eax, [ebp - 0x33c]
call fcn.004028dc
mov edx, 0x495bc8
lea eax, [ebp - 0x33c]
mov cl, 6
call fcn.004028ac
lea edx, [ebp - 0x33c]
lea eax, [ebp - 0x324]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
mov ecx, dword [ebp - 0x208]
call fcn.00403590
mov eax, dword [0x4a0718]
mov eax, dword [eax + 0x1b4]
mov eax, dword [eax + 0xfc]
mov edx, dword [ebp - 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0x211]
mov ecx, 1
mov edx, 1
call fcn.00402724
lea eax, [ebp - 0x324]
lea edx, [ebp - 0x211]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x234]
mov eax, dword [eax + 0xfc]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0x216]
lea edx, [ebp - 0x211]
mov cl, 4
call fcn.004028f8
mov esi, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x494833
jmp case.0x4942fd.0
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1be
call fcn.00406264
lea eax, [ebp - 0x324]
mov edx, 0x495bb4
call fcn.0040354c
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x328]
push eax
lea edx, [ebp - 0x340]
mov eax, 0x1c1
call fcn.00406264
mov eax, dword [ebp - 0x340]
push eax
lea eax, [ebp - 0x344]
lea edx, [ebp - 0x216]
call fcn.004034f0
mov ecx, dword [ebp - 0x344]
mov eax, dword [ebp - 0x1dc]
pop edx
call fcn.0048d888
mov edx, dword [ebp - 0x328]
pop eax
call fcn.0040354c
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x494bf4
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x49509d
mov eax, dword [reloc.winspool.drv_ClosePrinter]
mov byte [eax + 0x334], 0
mov eax, dword [reloc.winspool.drv_ClosePrinter]
mov eax, dword [eax + 0x204]
xor edx, edx
call fcn.0042caa8
cmp dword [ebp + 8], 0
jne 0x494c45
mov eax, dword [0x4a0718]
mov eax, dword [eax + 0x1b8]
mov eax, dword [eax + 0xfc]
mov edx, dword [eax]
call dword [edx + 0x38]
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x24c]
mov eax, dword [eax + 0xfc]
mov edx, dword [eax]
call dword [edx + 0x38]
mov esi, dword [ebp - 0x1ec]
dec esi
mov dword [ebp - 0x216], 0x2e2e2e03
jmp 0x494ff4
cmp byte [ebp - 0x201], 0xff
je case.0x4942fd.0
mov byte [ebp - 0x211], 0
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494ca6
cmp byte [ebp - 0x201], 0x39
jbe 0x494cb3
cmp byte [ebp - 0x201], 0x58
jne 0x495006
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494cfd
cmp byte [ebp - 0x201], 0x39
jbe 0x494d0a
cmp byte [ebp - 0x201], 0x58
jne 0x495006
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494d54
cmp byte [ebp - 0x201], 0x39
jbe 0x494d61
cmp byte [ebp - 0x201], 0x58
jne 0x495006
cmp byte [ebp - 0x202], 3
jne 0x494dc6
lea eax, [ebp - 0x211]
mov edx, 0x495bcc
xor ecx, ecx
mov cl, byte [eax]
inc ecx
call fcn.00402928
jne 0x494d90
mov esi, 0x495bd0
lea edi, [ebp - 0x211]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x494dc6
mov edx, 0x495bc4
lea eax, [ebp - 0x334]
call fcn.004028dc
lea edx, [ebp - 0x211]
lea eax, [ebp - 0x334]
mov cl, 5
call fcn.004028ac
lea edx, [ebp - 0x334]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028f8
cmp byte [ebp - 0x202], 4
jne 0x494e26
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x494e19
cmp byte [ebp - 0x201], 0x39
jbe 0x494e26
cmp byte [ebp - 0x201], 0x58
jne 0x495006
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
movzx edi, byte [ebp - 0x201]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
xor eax, eax
mov al, byte [ebp - 0x201]
shl eax, 8
add edi, eax
lea eax, [ebp - 0x208]
call fcn.004033d0
mov esi, edi
test esi, esi
jle 0x494ea9
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x324]
mov dl, byte [ebp - 0x201]
call fcn.004034e0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
call fcn.0040354c
dec esi
jne 0x494e71
lea eax, [ebp - 0x324]
lea edx, [ebp - 0x211]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
cmp byte [ebp - 0x1f1], 0
seta cl
mov eax, dword [reloc.winspool.drv_ClosePrinter]
call fcn.0045c6d8
test al, al
je 0x494fad
mov eax, dword [ebp - 0x208]
call fcn.00403544
test eax, eax
je 0x494fad
lea eax, [ebp - 0x208]
call fcn.00493cc8
lea edx, [ebp - 0x211]
lea eax, [ebp - 0x33c]
call fcn.004028dc
mov edx, 0x495bc8
lea eax, [ebp - 0x33c]
mov cl, 6
call fcn.004028ac
lea edx, [ebp - 0x33c]
lea eax, [ebp - 0x324]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
mov ecx, dword [ebp - 0x208]
call fcn.00403590
mov eax, dword [0x4a0718]
mov eax, dword [eax + 0x1b8]
mov eax, dword [eax + 0xfc]
mov edx, dword [ebp - 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
cmp byte [ebp - 0x202], 3
jne 0x494f7f
lea eax, [ebp - 0x211]
mov ecx, 1
mov edx, 1
call fcn.00402724
lea eax, [ebp - 0x324]
lea edx, [ebp - 0x211]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x24c]
mov eax, dword [eax + 0xfc]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0x216]
lea edx, [ebp - 0x211]
mov cl, 4
call fcn.004028f8
mov esi, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x494c5b
jmp case.0x4942fd.0
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1bf
call fcn.00406264
lea eax, [ebp - 0x324]
mov edx, 0x495bb4
call fcn.0040354c
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x328]
push eax
lea edx, [ebp - 0x340]
mov eax, 0x1c1
call fcn.00406264
mov eax, dword [ebp - 0x340]
push eax
lea eax, [ebp - 0x344]
lea edx, [ebp - 0x216]
call fcn.004034f0
mov ecx, dword [ebp - 0x344]
mov eax, dword [ebp - 0x1dc]
pop edx
call fcn.0048d888
mov edx, dword [ebp - 0x328]
pop eax
call fcn.0040354c
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x4950c3
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x4954cc
mov eax, dword [reloc.winspool.drv_OpenPrinterA]
mov byte [eax + 0x2f8], 0
mov eax, dword [reloc.winspool.drv_OpenPrinterA]
mov eax, dword [eax + 0x1fc]
xor edx, edx
call fcn.0042caa8
cmp dword [ebp + 8], 0
jne 0x495114
mov eax, dword [0x4a0718]
mov eax, dword [eax + 0x1bc]
mov eax, dword [eax + 0xfc]
mov edx, dword [eax]
call dword [edx + 0x38]
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x254]
mov eax, dword [eax + 0xfc]
mov edx, dword [eax]
call dword [edx + 0x38]
mov esi, dword [ebp - 0x1ec]
dec esi
mov dword [ebp - 0x216], 0x2e2e2e03
jmp 0x495423
cmp byte [ebp - 0x201], 0xff
je case.0x4942fd.0
mov byte [ebp - 0x211], 0
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x495435
cmp byte [ebp - 0x201], 0x39
ja 0x495435
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x495435
cmp byte [ebp - 0x201], 0x39
ja 0x495435
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x495435
cmp byte [ebp - 0x201], 0x39
ja 0x495435
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x32c]
mov dl, byte [ebp - 0x201]
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x32c]
lea eax, [ebp - 0x211]
mov cl, 4
call fcn.004028ac
cmp byte [ebp - 0x201], 0x30
jb 0x495435
cmp byte [ebp - 0x201], 0x39
ja 0x495435
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
movzx edi, byte [ebp - 0x201]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
xor eax, eax
mov al, byte [ebp - 0x201]
shl eax, 8
add edi, eax
lea eax, [ebp - 0x208]
call fcn.004033d0
mov esi, edi
test esi, esi
jle 0x4952f6
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x324]
mov dl, byte [ebp - 0x201]
call fcn.004034e0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
call fcn.0040354c
dec esi
jne 0x4952be
lea eax, [ebp - 0x324]
lea edx, [ebp - 0x211]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
cmp byte [ebp - 0x1f1], 0
seta cl
mov eax, dword [reloc.winspool.drv_OpenPrinterA]
call fcn.0044e29c
test al, al
je 0x4953dc
mov eax, dword [ebp - 0x208]
call fcn.00403544
test eax, eax
je 0x4953dc
lea eax, [ebp - 0x208]
call fcn.00493cc8
lea edx, [ebp - 0x211]
lea eax, [ebp - 0x33c]
call fcn.004028dc
mov edx, 0x495bc8
lea eax, [ebp - 0x33c]
mov cl, 6
call fcn.004028ac
lea edx, [ebp - 0x33c]
lea eax, [ebp - 0x324]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
mov ecx, dword [ebp - 0x208]
call fcn.00403590
mov eax, dword [0x4a0718]
mov eax, dword [eax + 0x1bc]
mov eax, dword [eax + 0xfc]
mov edx, dword [ebp - 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0x324]
lea edx, [ebp - 0x211]
call fcn.004034f0
mov edx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x1dc]
mov eax, dword [eax + 0x254]
mov eax, dword [eax + 0xfc]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0x216]
lea edx, [ebp - 0x211]
mov cl, 4
call fcn.004028f8
mov esi, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x49512a
jmp case.0x4942fd.0
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1c0
call fcn.00406264
lea eax, [ebp - 0x324]
mov edx, 0x495bb4
call fcn.0040354c
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x328]
push eax
lea edx, [ebp - 0x340]
mov eax, 0x1c1
call fcn.00406264
mov eax, dword [ebp - 0x340]
push eax
lea eax, [ebp - 0x344]
lea edx, [ebp - 0x216]
call fcn.004034f0
mov ecx, dword [ebp - 0x344]
mov eax, dword [ebp - 0x1dc]
pop edx
call fcn.0048d888
mov edx, dword [ebp - 0x328]
pop eax
call fcn.0040354c
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x4954f2
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x495655
mov esi, dword [ebp - 0x1ec]
dec esi
lea eax, [ebp - 0x20c]
call fcn.004033d0
jmp 0x495552
lea eax, [ebp - 0x324]
mov dl, byte [ebp - 0x201]
call fcn.004034e0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x20c]
call fcn.0040354c
mov esi, dword [ebp - 0x1ec]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
cmp byte [ebp - 0x201], 0xff
je 0x49555b
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x495506
cmp dword [ebp + 8], 0
jne 0x495574
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
mov byte [eax + 0x106250], dl
jmp 0x495585
mov eax, dword [reloc.comdlg32.dll_GetOpenFileNameA]
mov dl, byte [ebp - 0x201]
mov byte [eax + 0x409], dl
mov ebx, 1
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
je 0x4955e0
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1ac
call fcn.00406264
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
mov eax, dword [0x4a0718]
mov byte [eax + 0x1062d0], 0
jmp 0x495b0d
cmp dword [ebp + 8], 0
jne 0x4955fa
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
mov byte [eax + ebx + 0x106250], dl
jmp 0x49560c
mov eax, dword [reloc.comdlg32.dll_GetOpenFileNameA]
mov dl, byte [ebp - 0x201]
mov byte [eax + ebx + 0x409], dl
inc ebx
cmp ebx, 0x80
jne 0x49558a
cmp dword [ebp + 8], 0
jne case.0x4942fd.0
lea eax, [ebp - 0x444]
mov edx, dword [ebp - 0x20c]
mov ecx, 0xff
call fcn.0040387c
lea edx, [ebp - 0x444]
mov eax, dword [0x4a0718]
add eax, 0x1062d0
mov cl, 0x20
call fcn.004028f8
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x49567b
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x495907
mov esi, dword [ebp - 0x1ec]
dec esi
lea eax, [ebp - 0x20c]
call fcn.004033d0
jmp 0x4956db
lea eax, [ebp - 0x324]
mov dl, byte [ebp - 0x201]
call fcn.004034e0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x20c]
call fcn.0040354c
mov esi, dword [ebp - 0x1ec]
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
cmp byte [ebp - 0x201], 0xff
je 0x4956e4
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x49568f
xor ebx, ebx
cmp dword [ebp + 8], 0
jne 0x4956ff
mov eax, dword [0x4a0718]
lea eax, [eax + ebx*4 + 0x1062f4]
call fcn.004033d0
jmp 0x495710
mov eax, dword [reloc.comdlg32.dll_GetOpenFileNameA]
lea eax, [eax + ebx*4 + 0x48c]
call fcn.004033d0
inc ebx
cmp ebx, 0xa
jne 0x4956e6
cmp dword [ebp + 8], 0
jne 0x495728
mov eax, dword [0x4a0718]
mov byte [eax + 0x10631c], 0
xor ebx, ebx
mov esi, dword [ebp - 0x1ec]
dec esi
jmp 0x495862
cmp byte [ebp - 0x201], 0xff
je case.0x4942fd.0
cmp byte [ebp - 0x201], 0x30
jb 0x495874
cmp byte [ebp - 0x201], 0x39
ja 0x495874
xor ebx, ebx
mov bl, byte [ebp - 0x201]
sub ebx, 0x30
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
movzx edi, byte [ebp - 0x201]
lea eax, [ebp - 0x208]
call fcn.004033d0
mov esi, edi
test esi, esi
jle 0x4957cb
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
lea eax, [ebp - 0x324]
mov dl, byte [ebp - 0x201]
call fcn.004034e0
mov edx, dword [ebp - 0x324]
lea eax, [ebp - 0x208]
call fcn.0040354c
dec esi
jne 0x495793
cmp dword [ebp + 8], 0
jne 0x495817
mov eax, dword [0x4a0718]
lea eax, [eax + ebx*4 + 0x1062f4]
mov edx, dword [ebp - 0x208]
call fcn.00403420
lea eax, [ebp - 0x444]
mov edx, dword [ebp - 0x20c]
mov ecx, 0xff
call fcn.0040387c
lea edx, [ebp - 0x444]
mov eax, dword [0x4a0718]
add eax, 0x10631c
mov cl, 0x20
call fcn.004028f8
jmp 0x49582e
mov eax, dword [reloc.comdlg32.dll_GetOpenFileNameA]
lea eax, [eax + ebx*4 + 0x48c]
mov edx, dword [ebp - 0x208]
call fcn.00403420
mov esi, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x495736
jmp case.0x4942fd.0
push 0
lea edx, [ebp - 0x324]
mov eax, 0x1c3
call fcn.00406264
lea eax, [ebp - 0x324]
mov edx, 0x495bb4
call fcn.0040354c
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x328]
push eax
lea edx, [ebp - 0x340]
mov eax, ebx
call fcn.004061e0
mov eax, dword [ebp - 0x340]
push eax
lea edx, [ebp - 0x344]
mov eax, 0x1c1
call fcn.00406264
mov edx, dword [ebp - 0x344]
mov eax, dword [ebp - 0x1dc]
pop ecx
call fcn.0048d888
mov edx, dword [ebp - 0x328]
pop eax
call fcn.0040354c
mov eax, dword [ebp - 0x324]
call fcn.00403708
mov edx, eax
mov ecx, 0x495ba4
mov eax, dword [reloc.user32.dll_CharLowerA]
call fcn.00427000
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x49592d
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x4959fb
mov esi, dword [ebp - 0x1ec]
dec esi
mov dword [ebp - 0x216], 0x2e2e2e03
xor ebx, ebx
jmp 0x4959e9
cmp byte [ebp - 0x201], 0xff
je case.0x4942fd.0
lea esi, [ebx + ebx*2]
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
and dl, 0xf
mov byte [eax + esi + 0x105fd3], dl
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
mov byte [eax + esi + 0x105fd4], dl
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
mov byte [eax + esi + 0x105fd5], dl
inc ebx
mov esi, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x495945
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
jmp case.0x4942fd.0
cmp byte [ebp - 0x1f1], 0
je 0x495a21
mov al, byte [ebp - 0x202]
cmp al, byte [ebp - 0x1f1]
jne 0x495ae4
mov esi, dword [ebp - 0x1ec]
dec esi
mov dword [ebp - 0x216], 0x2e2e2e03
xor ebx, ebx
jmp 0x495ad5
cmp byte [ebp - 0x201], 0xff
je case.0x4942fd.0
lea esi, [ebx + ebx*2]
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
and dl, 0xf
mov byte [eax + esi + 0x106033], dl
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
mov byte [eax + esi + 0x106034], dl
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
mov eax, dword [0x4a0718]
mov dl, byte [ebp - 0x201]
mov byte [eax + esi + 0x106035], dl
inc ebx
mov esi, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x1dc]
cmp byte [eax + 0x3da], 0
jne 0x495b0d
push ebp
lea edx, [ebp - 0x201]
lea eax, [ebp - 0x1ec]
call fcn.00493790
pop ecx
test al, al
jne 0x495b0d
inc esi
cmp esi, dword [ebp - 0x1ec]
je 0x495a39
jmp case.0x4942fd.0
inc dword [ebp - 0x1ec]
push ebp
lea edx, [ebp - 0x202]
lea eax, [ebp - 0x21c]
call fcn.00493acc
pop ecx
cmp dword [ebp - 0x21c], 0xffff
jne 0x494299
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x495b3d
lea eax, [ebp - 0x1d8]
call fcn.004042f0
call fcn.004026e8
mov eax, dword [ebp - 0x1dc]
call fcn.0048db98
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x495b95
lea eax, [ebp - 0x344]
mov edx, 2
call fcn.004033f0
lea eax, [ebp - 0x328]
mov edx, 2
call fcn.004033f0
lea eax, [ebp - 0x20c]
mov edx, 2
call fcn.004033f0
lea eax, [ebp - 0x1f0]
call fcn.004033d0
lea eax, [ebp - 4]
call fcn.004033d0
ret