Function at 0x42e210
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45b083
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xab4
push ebx
mov ebx, ecx
push esi
push edi
mov al, byte [ebx + 0x2c]
mov ecx, dword [ebx + 0x14c]
mov si, word [ebx + 0x16e]
mov byte [ebp - 0x12], al
mov al, 0x4c
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x50], al
mov byte [ebp - 0x4f], al
mov byte [ebp - 0x4a], al
lea edx, [ebp - 0x9c]
mov al, 0xb3
push str.IDS_STS_RD_BAD_BLOCK_INFO
push edx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x90], esi
mov byte [ebp - 0x4e], 0x46
mov byte [ebp - 0x4d], 0x54
mov byte [ebp - 0x4c], 0x41
mov byte [ebp - 0x4b], 0x42
mov byte [ebp - 0x49], 0x45
mov byte [ebp - 0x44], al
mov byte [ebp - 0x43], al
mov byte [ebp - 0x42], 0xb9
mov byte [ebp - 0x41], 0xab
mov byte [ebp - 0x40], 0xbe
mov byte [ebp - 0x3f], 0xbd
mov byte [ebp - 0x3e], al
mov byte [ebp - 0x3d], 0xba
call dword [0x49773c]
add esp, 8
xor edi, edi
push eax
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], edi
call fcn.0045822c
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
movzx ax, byte [ebp - 0x12]
imul eax, esi
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x64], edi
mov byte [ebp - 0x11], 1
mov dword [ebp - 0x78], 0xff
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x88], edi
mov byte [ebp - 0x18], 0
mov al, byte [ebp - 0x12]
mov cl, byte [ebp - 0x18]
cmp cl, al
jae 0x42ebbb
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x58]
and edi, 0xff
mov eax, dword [ebp + 8]
imul edi, ecx
mov edx, ecx
add edi, eax
mov eax, 0xf0f0f0f0
mov dword [ebp - 0x60], edi
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov al, byte [ebx + 0x98]
mov ecx, 0xc0
neg al
sbb al, al
lea edi, [ebx + 0x42d0]
and al, 2
mov byte [ebx + 0xea], 1
inc al
mov word [ebx + 0xec], 0xff
mov byte [ebp - 0x1c], al
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov ax, word [ebx + 0xec]
mov cl, byte [ebx + 0xea]
push eax
push ecx
mov ecx, ebx
call fcn.0041f3e0
mov ecx, ebx
call fcn.0041f6a0
mov eax, dword [ebx + 8]
push 0xff
push 0
push 0
mov dl, byte [eax + 0x85]
mov al, byte [eax + 0x84]
push edx
push eax
mov ecx, ebx
call fcn.0041f920
push 0
push 0x86
lea ecx, [ebx + 0x100]
call fcn.004290c0
cmp al, 0xc
mov al, byte [ebp + 0xc]
sete cl
cmp al, 3
mov byte [ebp - 0x84], cl
je 0x42e3bd
mov eax, 0x40
jmp 0x42e3c4
mov ax, word [ebx + 0x16e]
test ax, ax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], 0
jbe 0x42e52b
mov dword [ebp - 0x54], 0
test byte [ebx + 0xb8], 0xe0
jne 0x42e5cd
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x80]
add eax, 4
and edx, 0xffff
mov dword [ebp - 0x64], eax
and eax, 0xffff
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x24]
mov dword [ebp - 0x24], edx
mov edx, dword [ebp - 0x48]
fmul qword [0x46ecb8]
fild dword [ebp - 0x24]
fdivp st(1)
fstp qword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
push eax
push ecx
lea eax, [ebx + 0xc0]
push edx
push eax
call sub.MFC42.DLL_CString::Format
mov ecx, dword [ebx + 4]
mov edx, dword [0x49772c]
add esp, 0x10
push 0
push ecx
push 0x40c
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x1c]
lea eax, [ebp - 0xac0]
push eax
mov eax, dword [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x20]
push 2
push 4
push edx
mov edx, dword [ebp - 0x18]
add eax, ecx
mov ecx, ebx
push eax
push edx
call fcn.00422c80
xor al, al
mov byte [ebp - 0x5c], al
mov esi, dword [ebp - 0x5c]
mov dl, byte [ebp - 0x1c]
and esi, 0xff
mov cl, byte [esi + 0x47460c]
test cl, dl
je 0x42e4ee
test al, al
lea edi, [ebp - 0xac0]
je 0x42e4a1
lea edi, [ebp - 0xa40]
cmp byte [edi], 0xaa
jne 0x42e4ee
movzx dx, byte [edi + 1]
lea eax, [esi + esi*2]
movzx si, byte [edi + 2]
shl edx, 8
shl eax, 1
add edx, esi
movzx si, byte [edi + 4]
mov word [ebp + eax - 0x70], dx
movzx dx, byte [edi + 3]
shl edx, 8
add edx, esi
mov word [ebp + eax - 0x6e], dx
mov dl, byte [edi + 5]
mov byte [ebp + eax - 0x6c], dl
mov dl, byte [edi + 6]
mov byte [ebp + eax - 0x6b], dl
mov al, byte [ebp - 0x1c]
not cl
and al, cl
mov byte [ebp - 0x1c], al
mov al, byte [ebp - 0x5c]
inc al
cmp al, 2
mov byte [ebp - 0x5c], al
jb 0x42e47b
mov al, byte [ebp - 0x1c]
test al, al
je 0x42e52b
mov eax, dword [ebp - 0x54]
add eax, 4
cmp ax, 0x40
mov dword [ebp - 0x54], eax
jb 0x42e3de
mov al, byte [ebp - 0x1c]
test al, al
je 0x42e52b
mov eax, dword [ebp - 0x20]
add eax, 0x40
cmp ax, word [ebp - 0x30]
mov dword [ebp - 0x20], eax
jb 0x42e3d7
movzx ax, byte [ebp - 0x18]
inc eax
mov ecx, dword [ebp - 0x80]
imul eax, dword [ebp - 0x90]
mov dword [ebp - 0x64], eax
and eax, 0xffff
mov dword [ebp - 0x24], eax
and ecx, 0xffff
fild dword [ebp - 0x24]
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x48]
fmul qword [0x46ecb8]
fild dword [ebp - 0x24]
fdivp st(1)
fstp qword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
push edx
push eax
lea edx, [ebx + 0xc0]
push ecx
push edx
call sub.MFC42.DLL_CString::Format
mov eax, dword [ebx + 4]
mov ecx, dword [0x49772c]
add esp, 0x10
push 0
push eax
push 0x40c
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
xor cl, cl
mov al, byte [ebx + 0x98]
inc eax
test eax, eax
jle 0x42e5b4
inc cl
mov byte [ebp - 0x34], cl
mov edx, dword [ebp - 0x34]
and edx, 0xff
cmp edx, eax
jl 0x42e5a2
mov al, byte [ebp - 0x1c]
test al, al
je 0x42e5e8
cmp byte [ebp + 0xc], 3
jne 0x42ebbb
inc byte [ebp - 0x18]
jmp 0x42e2eb
lea eax, [ebp - 0x98]
push 0x48d780
push eax
mov dword [ebp - 0x98], 0xa0000
call sub.MSVCRT.dll__CxxThrowException
push 0x4976f0
mov byte [ebp - 4], 3
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov al, byte [ebp - 0x6b]
test al, al
jne 0x42e610
lea eax, [ebp - 0x50]
push eax
call fcn.00452ff0
add esp, 4
lea ecx, [ebp - 0x50]
push ecx
jmp 0x42e620
lea edx, [ebp - 0x44]
push edx
call fcn.00452ff0
add esp, 4
lea eax, [ebp - 0x44]
push eax
call fcn.004556b0
add esp, 4
mov byte [ebp - 0x38], 0
mov esi, dword [ebp - 0x38]
xor ecx, ecx
mov cl, byte [ebx + 0x98]
and esi, 0xff
inc ecx
mov dword [ebp - 0x24], esi
cmp esi, ecx
jge 0x42eae3
cmp byte [ebx + 0x12f], 3
jne 0x42e6a9
lea eax, [esi + esi*2]
mov dl, byte [ebx + 0x592c]
mov byte [ebp - 0x29], dl
push 0xff
lea edi, [ebp + eax*2 - 0x6e]
push 0
push 0
mov ax, word [edi]
cmp ax, 0x100
sbb cl, cl
and eax, 0xff
and cl, 0xfe
mov word [edi], ax
mov eax, dword [ebx + 8]
add cl, 4
mov byte [ebx + 0x592c], cl
mov ecx, ebx
mov dl, byte [eax + 0x85]
mov al, byte [eax + 0x84]
push edx
push eax
call fcn.0041f920
mov cl, byte [ebp - 0x29]
mov byte [ebx + 0x592c], cl
mov ecx, dword [ebp - 0x84]
lea eax, [esi + esi*2]
lea edx, [ebp - 0xac0]
push 0
shl eax, 1
push edx
mov edx, dword [ebp - 0x38]
mov di, word [ebp + eax - 0x70]
push 1
push ecx
mov cl, byte [ebp + eax - 0x6c]
push edx
mov dx, word [ebp + eax - 0x6e]
mov eax, dword [ebp - 0x18]
push ecx
push edx
push edi
push eax
mov ecx, ebx
mov dword [ebp - 0x30], edi
call fcn.00422c10
mov edi, esi
lea ecx, [ebp - 0xac0]
shl edi, 8
push ecx
mov dword [ebp - 0x20], edi
lea eax, [ebp + edi - 0x2c0]
push eax
call fcn.004530f0
add esp, 8
test al, al
jne 0x42e73c
lea edx, [ebp - 0xac0]
lea eax, [ebp + edi - 0x2c0]
push edx
push eax
call fcn.004557d0
add esp, 8
test al, al
jne 0x42e73c
lea eax, [ebp - 0xa0]
push 0x48d780
push eax
mov dword [ebp - 0xa0], 0x60100
call sub.MSVCRT.dll__CxxThrowException
mov ecx, dword [ebp - 0x18]
mov ax, word [ebp - 0x30]
and ecx, 0xff
lea edx, [ecx + esi*8]
mov word [ebx + edx*2 + 0x46d4], ax
mov eax, dword [ebx + 0x4278]
test eax, eax
jne 0x42e9ae
push 0x40
call sub.MFC42.DLL_operatornew
mov edx, dword [ebp - 0x20]
mov edi, eax
mov ecx, 0x10
mov dword [ebx + 0x4278], edi
lea eax, [ebp + edx - 0x240]
mov byte [ebx + 0x427c], 3
mov esi, eax
add esp, 4
rep movsd dword es:[edi], dword [esi]
mov cl, byte [ebp + edx - 0x200]
test cl, cl
je 0x42e7b0
movzx cx, byte [ebp + edx - 0x1f0]
movzx si, byte [ebp + edx - 0x1ef]
shl ecx, 8
jmp 0x42e7c5
movzx cx, byte [ebp + edx - 0x210]
movzx si, byte [ebp + edx - 0x20f]
shl ecx, 8
mov al, byte [eax]
add ecx, esi
mov word [ebx + 0x46cc], cx
xor ecx, ecx
mov ch, byte [ebp + edx - 0x23f]
mov byte [ebp - 0x11], al
mov al, byte [ebp + edx - 0x1e0]
mov cl, byte [ebp + edx - 0x23e]
test al, al
mov dword [ebp - 0x78], ecx
jne 0x42e7fa
mov dword [ebp - 0x3c], 0x100
jmp 0x42e802
movzx ax, al
mov word [ebp - 0x3c], ax
mov esi, dword [ebx + 8]
xor eax, eax
mov ah, byte [ebp + edx - 0x21e]
xor ecx, ecx
mov al, byte [ebp + edx - 0x21d]
mov ch, byte [ebp + edx - 0x21c]
mov cl, byte [ebp + edx - 0x21b]
mov dword [ebp - 0x88], eax
mov al, byte [esi + 0x86]
mov dword [ebp - 0x74], ecx
cmp al, 0xff
je 0x42e83e
cmp byte [ebp + 0xc], 1
jne 0x42e8a1
mov al, byte [ebp + edx - 0x222]
test al, al
jne 0x42e858
mov cl, byte [ebp + edx - 0x22c]
mov byte [ebx + 0x4699], cl
jmp 0x42e86d
cmp al, 1
jne 0x42e993
mov al, byte [ebp + edx - 0x221]
mov byte [ebx + 0x4699], al
cmp byte [ebp + edx - 0x210], 0xca
jne 0x42e8a1
cmp byte [ebx + 0x4699], 8
jbe 0x42e8a1
cmp byte [ebx + 0x23], 0x96
jne 0x42e8a1
lea ecx, [ebp - 0x94]
push 0x48d780
push ecx
mov dword [ebp - 0x94], 0x60500
call sub.MSVCRT.dll__CxxThrowException
cmp byte [esi + 0x82], 2
je 0x42e8b3
cmp byte [ebx + 0xe4], 2
jne 0x42e8c0
mov al, byte [ebp + edx - 0x22f]
mov byte [ebx + 0xe4], al
xor ecx, ecx
mov cl, byte [ebp + edx - 0x21a]
mov dl, byte [ebp + edx - 0x218]
test dl, dl
mov dword [ebx + 0x5928], ecx
jne 0x42e8e1
mov edx, 1
jmp 0x42e8e7
and edx, 0xff
mov al, byte [ebx + 0x12f]
mov byte [ebx + 0x5934], dl
test al, al
je 0x42e952
cmp dl, 1
jne 0x42e952
xor eax, eax
mov al, byte [ebx + 0x12e]
sub eax, 0xe
je 0x42e94b
dec eax
je 0x42e92f
sub eax, 0x93
jne 0x42e952
mov al, byte [ebx + 0x12c]
cmp al, dl
je 0x42e94b
cmp al, 3
setne dl
dec edx
and edx, 3
inc edx
mov byte [ebx + 0x5934], dl
jmp 0x42e952
mov al, byte [ebx + 0x12c]
cmp al, 1
je 0x42e94b
cmp al, 3
setne al
dec eax
and eax, 3
inc eax
mov byte [ebx + 0x5934], al
jmp 0x42e952
mov byte [ebx + 0x5934], 2
mov ecx, dword [ebp - 0x20]
mov dl, byte [ebp + ecx - 0x217]
mov ecx, ebx
push edx
call fcn.00430890
mov byte [ebx + 0x592c], al
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov dl, byte [ebp + eax - 0x215]
test dl, dl
mov dl, byte [ebp + eax - 0x214]
setne cl
mov dword [ebx + 0x5930], ecx
mov byte [ebx + 0x5fcc], dl
jmp 0x42ea4d
lea eax, [ebp - 0xac]
push 0x48d780
push eax
mov dword [ebp - 0xac], 0x60400
call sub.MSVCRT.dll__CxxThrowException
mov al, byte [ebp - 0x11]
mov cl, byte [ebp + edi - 0x240]
cmp cl, al
jne 0x42eac8
cmp al, 1
je 0x42e9e5
mov edx, dword [ebp - 0x78]
xor ecx, ecx
mov ch, byte [ebp + edi - 0x23f]
and edx, 0xffff
mov cl, byte [ebp + edi - 0x23e]
cmp ecx, edx
jne 0x42eac8
mov al, byte [ebp + edi - 0x1e0]
test al, al
jne 0x42e9f7
mov eax, 0x100
jmp 0x42e9fc
and eax, 0xff
mov ecx, dword [ebp - 0x3c]
and ecx, 0xffff
cmp eax, ecx
jne 0x42eac8
mov eax, dword [ebp - 0x74]
xor edx, edx
mov dh, byte [ebp + edi - 0x21c]
and eax, 0xffff
mov dl, byte [ebp + edi - 0x21b]
cmp edx, eax
jne 0x42eac8
mov edx, dword [ebp - 0x88]
xor ecx, ecx
mov ch, byte [ebp + edi - 0x21e]
and edx, 0xffff
mov cl, byte [ebp + edi - 0x21d]
cmp ecx, edx
jne 0x42eac8
mov eax, dword [ebp - 0x58]
mov cl, byte [ebp - 0x3c]
shr eax, 8
shl cl, 1
cmp al, cl
jne 0x42ea6f
cmp byte [ebx + 0x592c], 1
jne 0x42ea6f
mov dword [ebx + 0x601c], 1
mov edi, dword [ebp - 0x24]
mov ax, word [ebp - 0x30]
xor cl, cl
lea edx, [edi + edi*4]
mov word [ebp + edx*2 - 0xc0], ax
cmp cl, 4
mov byte [ebp - 0x7c], cl
jae 0x42eac0
mov esi, dword [ebp - 0x7c]
mov eax, edi
and esi, 0xff
xor edx, edx
shl eax, 7
add eax, esi
shl eax, 1
mov dh, byte [ebp + eax - 0x1d0]
mov dl, byte [ebp + eax - 0x1cf]
lea eax, [esi + edi*4]
mov esi, edi
add esi, eax
inc cl
mov word [ebp + esi*2 - 0xbe], dx
jmp 0x42ea83
inc byte [ebp - 0x38]
jmp 0x42e62c
lea ecx, [ebp - 0x8c]
push 0x48d780
push ecx
mov dword [ebp - 0x8c], 0x60300
call sub.MSVCRT.dll__CxxThrowException
mov al, byte [ebp - 0x220]
test al, al
jne 0x42eb0c
mov edx, dword [ebp - 0x60]
lea eax, [ebp - 0x2c0]
push edx
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0xc0]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.0042ef50
jmp 0x42eb88
cmp al, 1
jne 0x42eb33
mov eax, dword [ebp - 0x60]
mov edx, dword [ebp - 0x6e]
lea ecx, [ebp - 0x2c0]
push eax
push ecx
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0xc0]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.0042f370
jmp 0x42eb88
cmp al, 2
je 0x42eb56
cmp al, 3
je 0x42eb56
lea edx, [ebp - 0xa8]
push 0x48d780
push edx
mov dword [ebp - 0xa8], 0x60400
call sub.MSVCRT.dll__CxxThrowException
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x60]
mov esi, ecx
xor eax, eax
mov edi, edx
push edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov edx, dword [ebp - 0x18]
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
lea eax, [ebp - 0x2c0]
lea ecx, [ebp - 0xc0]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.0042faf0
push 0x4976f0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov al, byte [ebp - 0x18]
mov dword [ebp - 4], 2
inc al
mov byte [ebp - 0x18], al
jmp 0x42e2eb
mov eax, dword [ebx + 0x4278]
test eax, eax
jne 0x42ebe9
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov cl, byte [ebx + 0x12f]
test cl, cl
je 0x42ee81
xor ecx, ecx
xor edx, edx
mov ch, byte [eax + 0x30]
mov dl, byte [eax + 0x2e]
mov cl, byte [eax + 0x31]
mov al, byte [eax + 0x2f]
push 0
mov esi, ecx
push edx
push eax
push esi
mov ecx, ebx
call fcn.00412db0
cmp al, 0x10
mov byte [ebp + 8], al
jne 0x42ec23
mov ecx, ebx
call fcn.004189d0
cmp byte [ebx + 0x23], 0x10
jne 0x42ec54
cmp byte [ebp + 8], 0x10
je 0x42ec4a
lea ecx, [ebp - 0xa4]
push 0x48d780
push ecx
mov dword [ebp - 0xa4], 0x30c00
call sub.MSVCRT.dll__CxxThrowException
mov dx, word [ebx + 0x593c]
push edx
jmp 0x42ecb5
mov eax, dword [ebp + 8]
and eax, 0xff
add eax, 0xfffffff0
cmp eax, 0x88
ja case.0x42ec6e.17
xor ecx, ecx
mov cl, byte [eax + 0x42eec0]
jmp dword [ecx*4 + 0x42eeb0]
push 0x2c
push 0
mov ecx, ebx
call fcn.00418d70
jmp 0x42ecc2
mov cx, word [ebx + 0x593c]
push ecx
jmp 0x42ecb5
mov eax, dword [ebx + 0x5930]
test eax, eax
je 0x42ecad
mov dx, word [ebx + 0x593c]
lea ecx, [ebx + 0x100]
push edx
push 0x10
call fcn.004290c0
jmp 0x42ecbc
mov ax, word [ebx + 0x593c]
push eax
mov ecx, ebx
call fcn.004241e0
mov byte [ebx + 0x52f4], al
mov ecx, ebx
call fcn.0041c0a0
mov esi, dword [ebx + 8]
mov al, byte [ebx + 0x12f]
mov cl, byte [esi + 0x86]
cmp cl, 0xff
je 0x42ecf3
cmp al, 3
jne 0x42ece6
cmp cl, 0xf
je 0x42ed0c
mov al, byte [ebx + 0x24]
imul cl
mov byte [ebx + 0x4699], al
jmp 0x42ed13
cmp al, 3
jne 0x42ed13
xor eax, eax
xor ecx, ecx
mov al, byte [ebx + 0x4699]
mov cl, byte [ebx + 0x24]
cdq
idiv ecx
cmp eax, 0xf
jne 0x42ed13
mov byte [ebx + 0x4699], 0x3c
mov al, byte [ebx + 0x4699]
mov cl, byte [ebx + 0x52f4]
cmp al, cl
jb 0x42ed25
mov al, cl
mov byte [ebx + 0x4699], al
mov al, byte [ebx + 0x12f]
cmp al, 3
mov byte [ebp + 0xc], 0x24
jne 0x42ed57
mov al, byte [esi + 0x86]
cmp al, 0xf
je 0x42ed53
cmp al, 0xff
jne 0x42ed57
mov edx, dword [ebx + 0x4278]
cmp byte [edx + 0x14], 0x1e
jne 0x42ed57
mov byte [ebp + 0xc], 0x30
mov ax, word [ebx + 0x593c]
mov ecx, dword [ebp + 8]
push eax
push ecx
lea ecx, [ebx + 0x100]
call fcn.004290c0
mov cl, byte [ebp + 0xc]
cmp al, 0x44
mov al, byte [ebx + 0x4699]
sbb dl, dl
and dl, 0xfc
add dl, 0xc
cmp cl, al
mov byte [ebp - 0x34], dl
jb 0x42ed8a
mov cl, al
xor edx, edx
and ecx, 0xff
mov dl, byte [ebx + 0x52f4]
lea edi, [edx - 8]
cmp ecx, edi
jge 0x42edb3
mov cl, byte [ebp + 0xc]
cmp cl, al
jb 0x42eda8
mov cl, al
and ecx, 0xff
mov dword [ebp + 8], ecx
jmp 0x42edb6
mov dword [ebp + 8], edi
mov cl, byte [ebp + 8]
mov esi, dword [ebp + 0xc]
mov byte [ebx + 0x597e], cl
mov ecx, dword [ebp - 0x34]
mov edx, eax
and ecx, 0xff
and edx, 0xff
and esi, 0xff
add ecx, edx
mov edx, esi
cmp esi, ecx
mov dword [ebp - 0x34], ecx
jl 0x42ede6
mov edx, ecx
cmp edx, edi
jge 0x42edf2
cmp esi, ecx
jge 0x42edf4
mov ecx, esi
jmp 0x42edf4
mov ecx, edi
mov byte [ebx + 0x597f], cl
and ecx, 0xff
lea edx, [ecx - 8]
mov ecx, dword [ebp + 8]
and ecx, 0xff
cmp ecx, edx
jl 0x42ee12
mov ecx, edx
mov dl, byte [ebp + 0xc]
mov byte [ebx + 0x597e], cl
cmp dl, al
mov cl, dl
jb 0x42ee23
mov cl, al
and ecx, 0xff
cmp ecx, edi
jge 0x42ee3f
cmp dl, al
mov cl, dl
jb 0x42ee35
mov cl, al
and ecx, 0xff
mov edx, ecx
jmp 0x42ee41
mov edx, edi
mov eax, dword [ebp - 0x34]
mov byte [ebx + 0x5980], dl
cmp esi, eax
mov ecx, esi
jl 0x42ee52
mov ecx, eax
cmp ecx, edi
jge 0x42ee5e
cmp esi, eax
jge 0x42ee60
mov eax, esi
jmp 0x42ee60
mov eax, edi
mov byte [ebx + 0x5981], al
and eax, 0xff
lea ecx, [eax - 8]
mov eax, edx
and eax, 0xff
cmp eax, ecx
jl 0x42ee7b
mov eax, ecx
mov byte [ebx + 0x5980], al
mov ecx, ebx
call fcn.0041c0a0
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov eax, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8