Function at 0x4c5c86
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, dword [ebp + 0x18]
mov esi, dword [ebp + 8]
mov edi, 0x51a4a8
mov eax, dword [ebx + 0x3f0]
cmp eax, 0x48
ja case.0x4c5430.0
jmp dword [eax*4 + 0x4c5437]
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c5592
cmp byte [esi + 1], 0x28
jne 0x4c5592
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c55b1
cmp byte [esi], 0x25
jne 0x4c55b1
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov dword [0x51a4b8], 2
mov byte [0x51b0d1], 0
jmp 0x4c5629
push 0x51b0d1
call fcn.00401318
pop ecx
push eax
mov eax, dword [0x51a4b8]
mov edx, dword [eax*4 + 0x51322c]
push edx
call fcn.00401318
pop ecx
pop ecx
add ecx, eax
cmp ecx, 0x3e7
ja 0x4c5639
cmp dword [0x51a4b8], 2
jle 0x4c5609
push 0x4fbc22
push 0x51b0d1
call fcn.0040123c
add esp, 8
mov eax, dword [0x51a4b8]
mov edx, dword [eax*4 + 0x51322c]
push edx
push 0x51b0d1
call fcn.0040123c
add esp, 8
inc dword [0x51a4b8]
mov ecx, dword [0x51a4b8]
cmp dword [ecx*4 + 0x51322c], 0
jne 0x4c55c4
push 0x51b0d1
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov eax, dword [edi]
push eax
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea edx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov esi, 0x51b89f
mov edi, 0x51b0d1
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
mov edi, eax
mov esi, 0x4fbc25
mov eax, edi
movsw word es:[edi], word [esi]
lea edx, [ebx + 0x78e]
mov edi, edx
mov esi, 0x4fbc28
mov eax, edi
movsw word es:[edi], word [esi]
lea edx, [ebx + 8]
push edx
call fcn.00409a14
pop ecx
mov dword [ebx + 0x3f4], eax
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
mov dword [ecx], eax
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c573a
lea edx, [ebx + 0x404]
push edx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c5757
mov ecx, dword [0x513234]
push ecx
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
xor eax, eax
mov al, byte [esi]
push eax
push 0x4fbc2b
call fcn.00401278
add esp, 8
test eax, eax
je 0x4c5792
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je 0x4c5792
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
mov esi, dword [edi]
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
lea eax, [ebx + 8]
mov dword [edi], eax
jmp 0x4c57d2
inc dword [edi]
mov edx, dword [edi]
cmp byte [edx], 0x20
je 0x4c57d0
mov ecx, dword [edi]
cmp byte [ecx], 0
je 0x4c580a
mov eax, dword [edi]
push edi
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x4c5811
mov byte [0x51b89f], 0
mov eax, dword [0x513234]
push eax
call fcn.0048b4fc
test al, al
je 0x4c584f
lea edx, [ebx + 0x4cc]
mov ecx, dword [0x513234]
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c5856
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c58da
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c58f6
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push 0x3a
push esi
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
mov edx, dword [edi]
mov byte [edx], 0
cmp byte [esi], 0x24
jne 0x4c5937
cmp byte [esi + 1], 0x28
jne 0x4c5937
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c5956
cmp byte [esi], 0x25
jne 0x4c5956
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x513238]
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
inc dword [edi]
jmp 0x4c5970
inc dword [edi]
mov edx, dword [edi]
cmp byte [edx], 0x20
je 0x4c596e
mov ecx, dword [edi]
cmp byte [ecx], 0
je case.0x4c5430.0
mov eax, dword [edi]
push eax
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
mov ecx, dword [edi]
push ecx
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov eax, dword [0x51a4ac]
push eax
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea edx, [ebx + 0x7de]
push esi
mov edi, esi
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [0x51a4ac]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp dword [0x513238], 0
je 0x4c5a4f
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c5a56
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
mov ecx, dword [0x4f2768]
push ecx
call fcn.004270e4
test eax, eax
je case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c5b1b
lea eax, [ebx + 0x404]
push eax
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c5b52
cmp byte [esi + 1], 0x28
jne 0x4c5b52
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c5b71
cmp byte [esi], 0x25
jne 0x4c5b71
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x4f2768]
add eax, 4
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov eax, dword [0x4f2768]
add eax, 4
mov edi, eax
mov esi, 0x51b89f
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c5ca3
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c5ce9
cmp byte [esi + 1], 0x28
jne 0x4c5ce9
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c5d08
cmp byte [esi], 0x25
jne 0x4c5d08
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
cmp byte [esi], 0x3f
jne 0x4c5d50
mov eax, dword [0x4f2768]
push eax
call fcn.004270e4
test eax, eax
jne case.0x4c5430.0
push ebx
lea edx, [ebx + 0x404]
push edx
push esi
call fcn.004c4e18
test eax, eax
jne 0x4c5e5e
lea ecx, [ebx + 0x404]
push ecx
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
jmp 0x4c5e5e
cmp byte [esi], 0x40
jne 0x4c5d98
mov eax, dword [0x4f2768]
push eax
call fcn.004270e4
test eax, eax
jne case.0x4c5430.0
push ebx
lea edx, [ebx + 0x404]
push edx
push esi
call fcn.004c4e18
test eax, eax
jne 0x4c5e5e
lea ecx, [ebx + 0x404]
push ecx
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
jmp 0x4c5e5e
cmp byte [esi], 0x3d
jne 0x4c5de5
mov eax, dword [0x4f2768]
push eax
call fcn.004270e4
test eax, eax
je case.0x4c5430.0
mov edx, dword [0x4f2768]
cmp dword [edx + 0x53c], 0
jne case.0x4c5430.0
inc esi
cmp byte [esi], 0
je 0x4c5e5e
push ebx
lea ecx, [ebx + 0x404]
push ecx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
jmp 0x4c5e5e
cmp byte [esi], 0x21
jne 0x4c5e2e
mov eax, dword [0x4f2768]
push eax
call fcn.004270e4
test eax, eax
je case.0x4c5430.0
mov edx, dword [0x4f2768]
cmp dword [edx + 0x53c], 0
je case.0x4c5430.0
inc esi
cmp byte [esi], 0
je 0x4c5e5e
push ebx
lea ecx, [ebx + 0x404]
push ecx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
jmp 0x4c5e5e
cmp byte [esi], 0x2a
jne case.0x4c5430.0
push ebx
lea eax, [ebx + 0x404]
push eax
push esi
call fcn.004c4e18
test eax, eax
jne 0x4c5e5e
lea edx, [ebx + 0x404]
push edx
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
cmp dword [ebx + 0xc40], 0
jne 0x4c5f0d
cmp dword [0x513238], 0
je 0x4c5f0d
push 0x3a
mov ecx, dword [edi]
push ecx
call fcn.00401278
add esp, 8
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je 0x4c5f0d
mov eax, dword [0x51a4ac]
mov byte [eax], 0
inc dword [0x51a4ac]
jmp 0x4c5ea9
inc dword [0x51a4ac]
mov edx, dword [0x51a4ac]
cmp byte [edx], 0x20
je 0x4c5ea3
mov ecx, dword [0x51a4ac]
cmp byte [ecx], 0
je case.0x4c5430.0
mov eax, dword [0x513238]
push esi
push edi
mov esi, 0x51b0d1
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x51b0d1
mov eax, dword [edi]
push eax
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
mov edx, dword [0x51a4ac]
mov dword [edi], edx
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea eax, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
mov byte [ebx + 0x4cc], 0
cmp dword [ebx + 0xc40], 0
jne 0x4c5fba
cmp dword [0x513238], 0
je 0x4c5fba
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c6021
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
lea eax, [ebx + 0x404]
mov edi, eax
mov esi, 0x51b89f
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c6113
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c614a
cmp byte [esi + 1], 0x28
jne 0x4c614a
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c6169
cmp byte [esi], 0x25
jne 0x4c6169
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x513238]
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c628e
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
mov eax, dword [0x4f2768]
push eax
call fcn.004270e4
test eax, eax
jne 0x4c62b1
mov edx, dword [0x4f6958]
push edx
call fcn.00469dc8
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c62e8
cmp byte [esi + 1], 0x28
jne 0x4c62e8
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c6307
cmp byte [esi], 0x25
jne 0x4c6307
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x4f2768]
push eax
call fcn.004270e4
test eax, eax
je 0x4c634f
mov edx, dword [0x4f2768]
cmp dword [edx + 0x53c], 0
je 0x4c633b
push esi
push edi
mov esi, 0x4fbc31
mov edi, 0x51b0d1
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x4c6371
push esi
push edi
mov esi, 0x4fbc39
mov edi, 0x51b0d1
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x4c6371
mov edx, dword [0x4f6958]
push edx
call fcn.00469dc8
test eax, eax
je 0x4c6371
push esi
push edi
mov esi, 0x4fbc3f
mov edi, 0x51b0d1
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x51b0d1
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
mov ecx, dword [ebx + 0xc2c]
push ecx
call fcn.00447d38
test eax, eax
je case.0x4c5430.0
push 0x3a
push esi
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
mov eax, dword [edi]
mov byte [eax], 0
mov edx, dword [ebx + 0xc2c]
push edx
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
inc dword [edi]
jmp 0x4c64a0
inc dword [edi]
mov ecx, dword [edi]
cmp byte [ecx], 0x20
je 0x4c649e
mov esi, dword [edi]
cmp byte [esi], 0
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
push 0x2c
mov eax, dword [edi]
push eax
call fcn.00401278
add esp, 8
mov esi, eax
mov dword [0x51a4b0], esi
test esi, esi
je 0x4c6502
mov byte [esi], 0
inc dword [0x51a4b0]
mov eax, dword [0x51a4b0]
cmp byte [eax], 0
jne 0x4c6502
xor edx, edx
mov dword [0x51a4b0], edx
jmp 0x4c6502
inc dword [edi]
mov ecx, dword [edi]
cmp byte [ecx], 0x20
je 0x4c6500
mov eax, dword [ebx + 0xc2c]
add eax, 0xf0
push eax
mov edx, dword [edi]
push edx
call fcn.004e842c
test eax, eax
jne 0x4c6532
mov eax, dword [0x51a4b0]
test eax, eax
je case.0x4c5430.0
mov dword [edi], eax
jmp 0x4c64ca
mov esi, dword [0x51a4ac]
mov dword [edi], esi
push esi
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
push 0x2c
mov eax, dword [edi]
push eax
call fcn.00401278
add esp, 8
mov esi, eax
mov dword [0x51a4b0], esi
test esi, esi
je 0x4c658a
mov byte [esi], 0
inc dword [0x51a4b0]
mov eax, dword [0x51a4b0]
cmp byte [eax], 0
jne 0x4c658a
xor edx, edx
mov dword [0x51a4b0], edx
jmp 0x4c658a
inc dword [edi]
mov ecx, dword [edi]
cmp byte [ecx], 0x20
je 0x4c6588
mov eax, dword [edi]
cmp byte [eax], 0
je 0x4c65c1
push 0x4fbc45
push eax
call fcn.004014a8
add esp, 8
test eax, eax
je 0x4c65d2
mov edx, dword [edi]
push edx
call fcn.00409a14
pop ecx
mov ecx, dword [ebx + 0xc2c]
cmp eax, dword [ecx + 0x154]
je 0x4c65d2
mov eax, dword [0x51a4b0]
test eax, eax
je case.0x4c5430.0
mov dword [edi], eax
jmp 0x4c6552
push ebx
mov edx, dword [0x51a4ac]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
mov eax, dword [0x51a4ac]
mov esi, ecx
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c667e
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov esi, 0x51b89f
mov edi, 0x4fae2c
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c6750
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c6839
cmp byte [esi + 1], 0x28
jne 0x4c6839
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c6858
cmp byte [esi], 0x25
jne 0x4c6858
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov byte [0x51b0d1], 0
push 0x51322c
push 0x51b0d1
push 0
call fcn.004b6b5c
push 0x51b0d1
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov eax, dword [edi]
push eax
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea edx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov esi, 0x51b89f
mov edi, 0x51b0d1
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
mov ecx, dword [0x4f6958]
push ecx
call fcn.00469dc8
test eax, eax
je case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c69a6
lea eax, [ebx + 0x404]
push eax
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c69dd
cmp byte [esi + 1], 0x28
jne 0x4c69dd
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c69fc
cmp byte [esi], 0x25
jne 0x4c69fc
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x4f6958]
add eax, 0x230
push eax
push esi
call fcn.004c50d8
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
mov eax, dword [edi]
push edi
mov esi, ecx
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
mov ecx, dword [0x4fc1a8]
push ecx
call fcn.004cee64
test eax, eax
je case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c6aed
lea eax, [ebx + 0x404]
push eax
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c6b24
cmp byte [esi + 1], 0x28
jne 0x4c6b24
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c6b43
cmp byte [esi], 0x25
jne 0x4c6b43
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x4fc1a8]
add eax, 0x230
push eax
push esi
call fcn.004c50d8
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
mov eax, dword [edi]
push edi
mov esi, ecx
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0xc40], 0
je case.0x4c5430.0
cmp byte [0x510dec], 0
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push 0x510dec
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
mov ecx, dword [edi]
push ecx
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
mov eax, dword [ebx + 0xc40]
push eax
call fcn.004eae80
mov dword [0x51a4b4], eax
cmp dword [0x51a4b4], 0
je case.0x4c5430.0
mov edx, dword [0x51a4b4]
add edx, 4
mov dword [0x51a4b0], edx
mov ecx, dword [edi]
cmp byte [ecx], 0x23
jne 0x4c6ca6
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cc], 1
jne case.0x4c5430.0
jmp 0x4c6d5a
mov edx, dword [edi]
cmp byte [edx], 0x3f
jne 0x4c6cd7
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cc], 2
jne case.0x4c5430.0
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cd], 2
ja case.0x4c5430.0
jmp 0x4c6d5a
mov edx, dword [edi]
cmp byte [edx], 0x3d
jne 0x4c6d0d
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cc], 2
jne case.0x4c5430.0
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cd], 3
jne case.0x4c5430.0
xor edx, edx
mov dword [0x51a4b0], edx
jmp 0x4c6d5a
mov ecx, dword [edi]
cmp byte [ecx], 0x21
jne 0x4c6d43
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cc], 2
jne case.0x4c5430.0
mov edx, dword [0x51a4b4]
cmp byte [edx + 0x4cd], 4
jne case.0x4c5430.0
xor ecx, ecx
mov dword [0x51a4b0], ecx
jmp 0x4c6d5a
mov eax, dword [edi]
cmp byte [eax], 0x40
jne 0x4c6d5a
mov edx, dword [0x51a4b4]
cmp byte [edx + 4], 0x40
jne case.0x4c5430.0
cmp dword [0x51a4b0], 0
jne 0x4c6db7
mov ecx, dword [edi]
cmp byte [ecx + 1], 0
je 0x4c6d6d
inc dword [edi]
push 0x20
mov eax, dword [0x51a4b4]
add eax, 4
push eax
call fcn.00401278
add esp, 8
mov dword [0x51a4b0], eax
cmp dword [0x51a4b0], 0
je 0x4c6d94
inc dword [0x51a4b0]
cmp dword [0x51a4b0], 0
je 0x4c6da8
mov edx, dword [0x51a4b0]
cmp byte [edx], 0
jne 0x4c6db7
mov ecx, dword [0x51a4b4]
add ecx, 4
mov dword [0x51a4b0], ecx
mov eax, dword [0x51a4b0]
push eax
mov edx, dword [edi]
push edx
call fcn.004e842c
test eax, eax
jne 0x4c6de1
push ebx
mov ecx, dword [0x51a4b0]
push ecx
mov eax, dword [edi]
push eax
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [0x51a4ac]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov dword [ebx + 0xc3c], 1
lea ecx, [ebx + 0x7de]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [0x51a4ac]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, 0x51b89f
mov edi, 0x510dec
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
mov ecx, dword [ebx + 0xc40]
push ecx
call fcn.004eae80
mov dword [0x51a4b4], eax
cmp dword [0x51a4b4], 0
je case.0x4c5430.0
mov eax, dword [0x51a4b4]
add eax, 4
mov dword [0x51a4ac], eax
cmp byte [esi], 0x23
jne 0x4c6f41
mov edx, dword [0x51a4b4]
cmp byte [edx + 0x4cc], 1
jne case.0x4c5430.0
jmp 0x4c6fea
cmp byte [esi], 0x3f
jne 0x4c6f6d
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cc], 2
jne case.0x4c5430.0
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cd], 2
ja case.0x4c5430.0
jmp 0x4c6fea
cmp byte [esi], 0x3d
jne 0x4c6fa1
mov edx, dword [0x51a4b4]
cmp byte [edx + 0x4cc], 2
jne case.0x4c5430.0
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cd], 3
jne case.0x4c5430.0
xor eax, eax
mov dword [0x51a4ac], eax
jmp 0x4c6fea
cmp byte [esi], 0x21
jne 0x4c6fd5
mov edx, dword [0x51a4b4]
cmp byte [edx + 0x4cc], 2
jne case.0x4c5430.0
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cd], 4
jne case.0x4c5430.0
xor eax, eax
mov dword [0x51a4ac], eax
jmp 0x4c6fea
cmp byte [esi], 0x40
jne 0x4c6fea
mov edx, dword [0x51a4b4]
cmp byte [edx + 4], 0x40
jne case.0x4c5430.0
cmp dword [0x51a4ac], 0
jne 0x4c7044
cmp byte [esi + 1], 0
je 0x4c6ffa
inc esi
push 0x20
mov ecx, dword [0x51a4b4]
add ecx, 4
push ecx
call fcn.00401278
add esp, 8
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je 0x4c7022
inc dword [0x51a4ac]
cmp dword [0x51a4ac], 0
je 0x4c7035
mov eax, dword [0x51a4ac]
cmp byte [eax], 0
jne 0x4c7044
mov edx, dword [0x51a4b4]
add edx, 4
mov dword [0x51a4ac], edx
mov ecx, dword [0x51a4ac]
push ecx
push esi
call fcn.004e842c
test eax, eax
jne 0x4c706a
push ebx
mov eax, dword [0x51a4ac]
push eax
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
cmp dword [0x4f5354], 0
je 0x4c7102
mov eax, dword [0x4f5354]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c7109
mov byte [0x51b89f], 0
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c7194
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov eax, dword [0x513238]
push eax
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
mov eax, dword [edi]
push edi
mov esi, ecx
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513238]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c72ab
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c72c7
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c73df
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c73fb
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
cmp dword [0x51323c], 0
je 0x4c748f
mov eax, dword [0x51323c]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c7496
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0xc40], 0
je case.0x4c5430.0
mov ecx, dword [ebx + 0xc40]
push ecx
call fcn.004eae80
mov dword [0x51a4b4], eax
cmp dword [0x51a4b4], 0
je case.0x4c5430.0
push 0x3a
push esi
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
mov eax, dword [edi]
mov byte [eax], 0
cmp byte [esi], 0x24
jne 0x4c7596
cmp byte [esi + 1], 0x28
jne 0x4c7596
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c75b5
cmp byte [esi], 0x25
jne 0x4c75b5
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
push 0x4fbc48
push esi
call fcn.004014a8
add esp, 8
test eax, eax
je 0x4c75de
mov eax, dword [0x51a4b4]
add eax, 4
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
inc dword [edi]
jmp 0x4c75e4
inc dword [edi]
mov edx, dword [edi]
cmp byte [edx], 0x20
je 0x4c75e2
mov ecx, dword [edi]
cmp byte [ecx], 0
je case.0x4c5430.0
mov eax, dword [edi]
push eax
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
push 0x2c
mov edx, dword [edi]
push edx
call fcn.00401278
add esp, 8
mov esi, eax
mov dword [0x51a4b0], esi
test esi, esi
je 0x4c7648
mov byte [esi], 0
inc dword [0x51a4b0]
mov eax, dword [0x51a4b0]
cmp byte [eax], 0
jne 0x4c7648
xor edx, edx
mov dword [0x51a4b0], edx
jmp 0x4c7648
inc dword [edi]
mov ecx, dword [edi]
cmp byte [ecx], 0x20
je 0x4c7646
mov eax, dword [edi]
cmp byte [eax], 0
je 0x4c7679
push 0x4fbc4b
push eax
call fcn.004014a8
add esp, 8
test eax, eax
je 0x4c768a
mov edx, dword [edi]
push edx
call fcn.00409a14
pop ecx
cmp eax, dword [ebx + 0xc34]
je 0x4c768a
mov eax, dword [0x51a4b0]
test eax, eax
je case.0x4c5430.0
mov dword [edi], eax
jmp 0x4c7610
push ebx
mov edx, dword [0x51a4ac]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
mov eax, dword [0x51a4ac]
mov esi, ecx
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x51a4b4]
add edx, 4
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c7766
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c7835
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c7851
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [0x51b89f], 0
cmp dword [0x513238], 0
je 0x4c7965
mov dword [0x51a4b8], 3
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c794f
push 0x4fbc4e
push 0x51b89f
call fcn.0040123c
add esp, 8
mov eax, dword [0x51a4b8]
mov edx, dword [eax*4 + 0x51322c]
push edx
push 0x51b89f
call fcn.0040123c
add esp, 8
inc dword [0x51a4b8]
mov ecx, dword [0x51a4b8]
cmp dword [ecx*4 + 0x51322c], 0
jne 0x4c7923
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c79ec
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
jmp 0x4c79ec
inc esi
cmp byte [esi], 0x20
je 0x4c79eb
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov byte [0x51b89f], 0
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x468]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c7af1
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
jmp 0x4c7af1
inc esi
cmp byte [esi], 0x20
je 0x4c7af0
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov byte [0x51b89f], 0
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c7bc9
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
jmp 0x4c7bc9
inc esi
cmp byte [esi], 0x20
je 0x4c7bc8
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
cmp dword [0x513238], 0
je 0x4c7c40
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c7c47
mov byte [0x51b89f], 0
mov eax, dword [0x513234]
push eax
call fcn.0048b4fc
test al, al
je 0x4c7c85
lea edx, [ebx + 0x4cc]
mov ecx, dword [0x513234]
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c7c8c
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c7d10
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c7d2c
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
cmp dword [0x513238], 0
je 0x4c7e13
mov dword [0x51a4b8], 3
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c7dfd
push 0x4fbc51
push 0x51b89f
call fcn.0040123c
add esp, 8
mov eax, dword [0x51a4b8]
mov edx, dword [eax*4 + 0x51322c]
push edx
push 0x51b89f
call fcn.0040123c
add esp, 8
inc dword [0x51a4b8]
mov ecx, dword [0x51a4b8]
cmp dword [ecx*4 + 0x51322c], 0
jne 0x4c7dd1
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c7ec4
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c7ee0
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
cmp dword [0x513238], 0
je 0x4c7f74
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c7f7b
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c800f
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
cmp dword [0x513230], 0
je 0x4c8087
mov eax, dword [0x513230]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c808e
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c80f5
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c81a7
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov byte [0x51b89f], 0
push 0x51322c
push 0x51b89f
push 2
call fcn.004b6b5c
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c828a
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
jmp 0x4c828a
inc esi
cmp byte [esi], 0x20
je 0x4c8289
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
cmp dword [0x513234], 0
je 0x4c8301
mov eax, dword [0x513234]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c8308
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
mov ecx, dword [0x4fc5d8]
push ecx
call fcn.004d3e04
test eax, eax
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c83c9
cmp byte [esi + 1], 0x28
jne 0x4c83c9
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c83e8
cmp byte [esi], 0x25
jne 0x4c83e8
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x4fc5d8]
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c84eb
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c8522
cmp byte [esi + 1], 0x28
jne 0x4c8522
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c8541
cmp byte [esi], 0x25
jne 0x4c8541
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x513238]
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
cmp dword [0x513238], 0
je 0x4c85ed
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c85f4
mov byte [0x51b89f], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c8678
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c8694
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push 0x3a
push esi
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
mov edx, dword [edi]
mov byte [edx], 0
cmp byte [esi], 0x24
jne 0x4c86d5
cmp byte [esi + 1], 0x28
jne 0x4c86d5
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c86f4
cmp byte [esi], 0x25
jne 0x4c86f4
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x513238]
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
inc dword [edi]
jmp 0x4c870e
inc dword [edi]
mov edx, dword [edi]
cmp byte [edx], 0x20
je 0x4c870c
mov ecx, dword [edi]
cmp byte [ecx], 0
je case.0x4c5430.0
mov eax, dword [edi]
push eax
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
mov ecx, dword [edi]
push ecx
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov eax, dword [0x51a4ac]
push eax
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea edx, [ebx + 0x7de]
push esi
mov edi, esi
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [0x51a4ac]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x513234]
push eax
call fcn.0048b4fc
test al, al
je 0x4c8820
lea edx, [ebx + 0x4cc]
mov ecx, dword [0x513234]
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c8827
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0x3fc], 0
je 0x4c88ab
lea ecx, [ebx + 0x404]
push ecx
call fcn.004c51fc
test eax, eax
jne case.0x4c5430.0
cmp dword [ebx + 0x400], 0
je 0x4c88c7
mov eax, dword [0x513234]
push eax
call fcn.004c5240
test eax, eax
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push ebx
mov edx, dword [0x513234]
push edx
push esi
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov ecx, dword [edi]
push ecx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
cmp dword [0x513238], 0
je 0x4c895b
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c8962
mov byte [0x51b89f], 0
lea eax, [ebx + 0x4cc]
mov edx, dword [0x513234]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
inc esi
cmp byte [esi], 0x20
je 0x4c89f6
cmp byte [esi], 0
je case.0x4c5430.0
push ebx
push esi
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
mov ecx, dword [ebp + 0xc]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
cmp dword [0x513238], 0
je 0x4c8a6e
mov eax, dword [0x513238]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c8a75
mov byte [0x51b89f], 0
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
cmp dword [ebx + 0xc40], 0
je case.0x4c5430.0
cmp byte [0x502904], 0
je case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
push 0x502904
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
mov ecx, dword [edi]
push ecx
call fcn.004c5330
mov dword [0x51a4ac], eax
cmp dword [0x51a4ac], 0
je case.0x4c5430.0
mov eax, dword [ebx + 0xc40]
push eax
call fcn.004eae80
mov dword [0x51a4b4], eax
cmp dword [0x51a4b4], 0
je case.0x4c5430.0
mov edx, dword [0x51a4b4]
add edx, 4
mov dword [0x51a4b0], edx
mov ecx, dword [edi]
cmp byte [ecx], 0x23
jne 0x4c8b86
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cc], 1
jne case.0x4c5430.0
jmp 0x4c8c3a
mov edx, dword [edi]
cmp byte [edx], 0x3f
jne 0x4c8bb7
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cc], 2
jne case.0x4c5430.0
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cd], 2
ja case.0x4c5430.0
jmp 0x4c8c3a
mov edx, dword [edi]
cmp byte [edx], 0x3d
jne 0x4c8bed
mov ecx, dword [0x51a4b4]
cmp byte [ecx + 0x4cc], 2
jne case.0x4c5430.0
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cd], 3
jne case.0x4c5430.0
xor edx, edx
mov dword [0x51a4b0], edx
jmp 0x4c8c3a
mov ecx, dword [edi]
cmp byte [ecx], 0x21
jne 0x4c8c23
mov eax, dword [0x51a4b4]
cmp byte [eax + 0x4cc], 2
jne case.0x4c5430.0
mov edx, dword [0x51a4b4]
cmp byte [edx + 0x4cd], 4
jne case.0x4c5430.0
xor ecx, ecx
mov dword [0x51a4b0], ecx
jmp 0x4c8c3a
mov eax, dword [edi]
cmp byte [eax], 0x40
jne 0x4c8c3a
mov edx, dword [0x51a4b4]
cmp byte [edx + 4], 0x40
jne case.0x4c5430.0
cmp dword [0x51a4b0], 0
jne 0x4c8c97
mov ecx, dword [edi]
cmp byte [ecx + 1], 0
je 0x4c8c4d
inc dword [edi]
push 0x20
mov eax, dword [0x51a4b4]
add eax, 4
push eax
call fcn.00401278
add esp, 8
mov dword [0x51a4b0], eax
cmp dword [0x51a4b0], 0
je 0x4c8c74
inc dword [0x51a4b0]
cmp dword [0x51a4b0], 0
je 0x4c8c88
mov edx, dword [0x51a4b0]
cmp byte [edx], 0
jne 0x4c8c97
mov ecx, dword [0x51a4b4]
add ecx, 4
mov dword [0x51a4b0], ecx
mov eax, dword [0x51a4b0]
push eax
mov edx, dword [edi]
push edx
call fcn.004e842c
test eax, eax
jne 0x4c8cc1
push ebx
mov ecx, dword [0x51a4b0]
push ecx
mov eax, dword [edi]
push eax
call fcn.004c4e18
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [0x51a4ac]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [0x51a4ac]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, 0x51b89f
mov edi, 0x502904
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
jmp case.0x4c5430.0
push esi
call fcn.004c5330
mov dword [edi], eax
cmp dword [edi], 0
je case.0x4c5430.0
cmp byte [esi], 0x24
jne 0x4c8df5
cmp byte [esi + 1], 0x28
jne 0x4c8df5
push ebx
push 0x51acea
push esi
call fcn.004c4d54
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
jmp 0x4c8e14
cmp byte [esi], 0x25
jne 0x4c8e14
push 0
push 0x51acea
push esi
call fcn.004e78d4
test eax, eax
je case.0x4c5430.0
mov esi, 0x51acea
mov eax, dword [0x513234]
push eax
push esi
call fcn.004e842c
test eax, eax
je case.0x4c5430.0
push ebx
mov edx, dword [edi]
push edx
call fcn.004c52a4
test eax, eax
jne case.0x4c5430.0
lea ecx, [ebx + 0x7de]
push esi
push edi
mov edi, esi
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0xc]
mov edx, dword [edi]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov eax, dword [0x513234]
mov esi, 0x51b89f
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [ebx + 0x4cc], 0
lea eax, [ebx + 0x7b6]
lea edx, [ebx + 0x766]
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x78e]
add ebx, 0x73e
mov esi, eax
mov edi, ebx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], edx
pop edi
pop esi
pop ebx
pop ebp
ret 0x14