Function at 0x4bf190
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x44
mov esi, ecx
mov eax, dword [0x742040]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [ecx + 0x24c]
mov dword [ebp - 0x50], 0
test eax, eax
jne 0x4bfe57
mov eax, dword [esi + 4]
mov dword [ebp - 0x28], eax
mov edi, dword [esi + 0x34]
lea eax, [esi + 8]
mov dword [ebp - 0x38], eax
mov eax, dword [esi]
cmp eax, 7
mov dword [ebp - 0x1c], esi
je 0x4bf724
cmp eax, 8
je 0x4bf316
jmp 0x4bfede
mov ecx, eax
mov edx, dword [ebp - 0x38]
lea eax, [ebp - 0x14]
push eax
call fcn.004c0000
add esp, 4
test eax, eax
je 0x4bfdcc
mov eax, dword [ebp - 0x14]
jmp 0x4bf22f
mov esi, eax
mov eax, dword [ebp - 0x38]
mov edx, dword [eax]
mov eax, esi
shr edx, cl
movzx esi, dl
lea eax, [eax + esi*4]
movzx ebx, byte [eax]
cmp ebx, 9
jae 0x4bfe62
mov esi, dword [ebp - 0x1c]
movzx edx, bl
add edx, ecx
mov dword [esi + 0xc], edx
movzx eax, word [eax + 2]
mov edi, dword [ebp - 0x24]
mov ecx, dword [esi + 0x60]
mov byte [ecx + edi], al
mov eax, dword [esi + 0xc0]
dec eax
mov dword [esi + 0xc0], eax
inc edi
cmp edi, dword [esi + 0x40]
je 0x4bfc89
dec dword [ebp - 0x28]
je 0x4bf431
mov dword [ebp - 0x24], edi
test eax, eax
je 0x4bfdf9
mov dword [ebp - 0x14], 0xffffffff
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x100]
lea edx, [ecx - 0x12]
cmp edx, 0xf
jae 0x4bf203
mov ebx, dword [esi + 0x14]
dec ebx
mov edi, ecx
cmp ebx, 0xffffffff
je 0x4bf1e5
mov ecx, dword [esi + 8]
mov edx, dword [ebp - 0x1c]
mov esi, dword [edx + 0x10]
mov edx, ecx
shr edx, 8
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 8], edx
movzx edx, byte [esi]
shld edx, ecx, 0x18
mov eax, dword [ebp - 0x1c]
mov dword [eax + 8], edx
lea ecx, [edi - 8]
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], ecx
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x14], ebx
inc esi
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x10], esi
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x1c]
dec ebx
add edi, 0xffffffe6
cmp edi, 0xf
mov edi, ecx
jae 0x4bf20c
jmp 0x4bf281
mov eax, dword [esi + 0xc0]
jmp 0x4bf258
mov ecx, eax
mov edx, dword [ebp - 0x38]
lea eax, [ebp - 0x14]
push eax
call fcn.004c0000
add esp, 4
test eax, eax
je 0x4bfdcc
mov al, byte [ebp - 0x14]
mov edi, dword [ebp - 0x24]
jmp 0x4bf408
sub dword [esi + 0xb8], edi
mov dword [ebp - 0x28], edi
mov edi, dword [ebp - 0x24]
mov dword [esi], 8
cmp dword [esi + 0xb0], 0
jne 0x4bf2db
mov eax, dword [esi + 0x44]
lea ecx, [edi - 1]
and ecx, eax
lea edx, [edi - 2]
and edx, eax
mov eax, dword [ebp - 0x1c]
mov esi, dword [eax + 0x60]
mov al, byte [esi + ecx]
mov bh, byte [esi + edx]
mov esi, dword [ebp - 0x1c]
mov ecx, dword [esi + 0xc0]
mov dword [ebp - 0x24], edi
test ecx, ecx
je 0x4bfdd5
mov byte [ebp - 0x2c], al
movzx eax, al
movzx ecx, bh
mov edx, dword [esi + 0x6c]
mov cl, byte [edx + ecx + 0x100]
or cl, byte [edx + eax]
mov eax, dword [esi + 0x70]
movzx ecx, cl
mov edx, dword [esi + 0x78]
movzx eax, byte [eax + ecx]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x14], 0xffffffff
mov ebx, dword [esi + 0xc]
lea ecx, [ebx - 0x12]
cmp ecx, 0xf
jae 0x4bf45d
mov edi, dword [esi + 0x14]
dec edi
mov ecx, ebx
cmp edi, 0xffffffff
je 0x4bf2e6
mov ebx, dword [esi + 8]
mov edx, dword [ebp - 0x1c]
mov esi, dword [edx + 0x10]
mov edx, ebx
shr edx, 8
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 8], edx
movzx edx, byte [esi]
shld edx, ebx, 0x18
mov eax, dword [ebp - 0x1c]
mov dword [eax + 8], edx
lea ebx, [ecx - 8]
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], ebx
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x14], edi
inc esi
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x10], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
dec edi
add ecx, 0xffffffe6
cmp ecx, 0xf
mov ecx, ebx
jb 0x4bf394
mov ecx, ebx
shr edx, cl
movzx ecx, dl
lea eax, [eax + ecx*4]
movzx ecx, byte [eax]
cmp ecx, 9
jae 0x4bf468
mov edi, dword [ebp - 0x24]
movzx ecx, cl
add ecx, ebx
mov dword [esi + 0xc], ecx
mov al, byte [eax + 2]
mov ecx, dword [esi + 0x60]
mov byte [ecx + edi], al
mov ecx, dword [esi + 0xc0]
dec ecx
mov dword [esi + 0xc0], ecx
inc edi
cmp edi, dword [esi + 0x40]
je 0x4bfc89
mov bh, byte [ebp - 0x2c]
dec dword [ebp - 0x28]
jne 0x4bf347
mov dword [ebp - 0x28], 0
cmp dword [esi + 0xb8], 0
jg 0x4bf530
mov dword [esi], 0xe
xor eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0
jmp 0x4bf76a
mov ecx, eax
mov eax, dword [ebp - 0x38]
mov edx, dword [eax]
mov eax, ecx
jmp 0x4bf3e8
add ebx, 8
mov dword [esi + 0xc], ebx
shr edx, 8
and edx, dword [ecx*4 + 0x6e4b60]
and edx, 0x7f
lea ecx, [eax + edx*4]
movzx eax, word [eax + 2]
lea eax, [ecx + eax*4]
mov cl, byte [eax]
jmp 0x4bf3fa
mov dword [esi + 0x10c], ebx
cmp ebx, 3
jbe 0x4bfaed
lea ecx, [ebx - 0xa]
lea edx, [ebx - 4]
cmp ebx, 0xa
mov esi, 3
mov eax, 0xa
cmovb eax, esi
mov esi, dword [ebp - 0x1c]
cmovb ecx, edx
shl ecx, 2
mov edx, 0x605142
shr edx, cl
and edx, 7
add eax, dword [esi + 0x48]
and eax, 3
mov eax, dword [esi + eax*4 + 0x4c]
lea ecx, [edx + eax]
add ecx, 0xfffffffd
test ecx, ecx
mov eax, SysReAllocString
cmovg eax, ecx
jmp 0x4bf672
lea eax, [ebp - 0x14]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
push eax
call fcn.004c0000
add esp, 4
test eax, eax
je 0x4bfdab
mov ebx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1c]
jmp 0x4bf602
sete al
movzx eax, al
mov dword [esi + 0xb4], eax
mov eax, dword [esi + 0x48]
dec eax
mov dword [esi + 0x48], eax
and eax, 3
mov eax, dword [esi + eax*4 + 0x4c]
mov dword [esi + 0x10c], eax
jmp 0x4bf67b
mov edi, dword [ebp - 0x24]
mov dword [esi], 9
cmp dword [esi + 0x10c], 0
mov dword [ebp - 0x24], edi
jns 0x4bf508
cmp dword [esi + 0xc8], 0
je 0x4bfdbd
xor eax, eax
dec eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 0x98]
movzx ecx, byte [esi + 0x104]
mov edx, esi
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov ecx, dword [edx + 0x10]
mov dword [ebp - 0x44], ecx
mov ecx, dword [edx + 0x14]
mov dword [ebp - 0x40], ecx
lea ecx, [esi - 0x12]
mov dword [ebp - 0x20], eax
mov edx, eax
mov dword [ebp - 0x48], esi
mov eax, esi
cmp ecx, 0xe
ja 0x4bf5da
mov eax, dword [ebp - 0x44]
lea edi, [eax + 1]
mov eax, dword [ebp - 0x40]
lea ebx, [eax - 1]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x1c]
cmp ebx, 0xffffffff
je 0x4bf4e3
mov eax, edx
shr eax, 8
mov dword [esi + 8], eax
movzx eax, byte [edi - 1]
shrd edx, eax, 8
mov dword [esi + 8], edx
lea eax, [ecx - 8]
mov dword [esi + 0xc], eax
mov dword [esi + 0x14], ebx
mov dword [esi + 0x10], edi
inc edi
dec ebx
add ecx, 0xffffffe6
cmp ecx, 0xf
mov ecx, eax
jb 0x4bf5a6
mov ecx, eax
shr edx, cl
movzx ecx, dl
mov esi, dword [ebp - 0x2c]
lea ecx, [esi + ecx*4]
movzx ebx, byte [ecx]
cmp ebx, 9
jae 0x4bfac6
mov esi, dword [ebp - 0x1c]
movzx edx, bl
add edx, eax
mov dword [esi + 0xc], edx
movzx ebx, word [ecx + 2]
mov ecx, dword [esi + 0xc8]
lea eax, [ecx - 1]
mov dword [esi + 0xc8], eax
mov dword [esi + 0xb4], 0
cmp ebx, 0xf
jbe 0x4bf48c
movzx edx, byte [esi + ebx + 0x270]
xor eax, eax
test edx, edx
je 0x4bf663
mov dword [ebp - 0x2c], ecx
cmp dl, 0x18
ja 0x4bfd41
mov ecx, dword [esi + 0xc]
mov edi, 0x20
sub edi, ecx
cmp edi, edx
jb 0x4bf8b6
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
shr eax, cl
and eax, dword [edx*4 + 0x6e4b80]
add ecx, edx
mov dword [esi + 0xc], ecx
mov cl, byte [esi + 0xf0]
shl eax, cl
add eax, dword [esi + ebx*4 + 0x490]
mov dword [esi + 0x10c], eax
mov edi, dword [ebp - 0x24]
mov ecx, dword [esi + 0x38]
mov ebx, dword [esi + 0x3c]
cmp ebx, ecx
je 0x4bf68f
cmp edi, ecx
cmovl ecx, edi
mov dword [esi + 0x3c], ecx
mov ebx, ecx
mov ecx, dword [esi + 0x108]
mov edx, eax
sub edx, ebx
mov dword [ebp - 0x28], ecx
jg 0x4bf788
mov ecx, edi
sub ecx, eax
and ecx, dword [esi + 0x44]
mov edx, dword [ebp - 0x1c]
mov esi, dword [edx + 0x48]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x60]
mov edi, esi
and edi, 3
mov ebx, dword [ebp - 0x1c]
mov dword [ebx + edi*4 + 0x4c], eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
lea eax, [ebx + edi]
mov dword [ebp - 0x2c], eax
inc esi
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x48], esi
mov esi, dword [ebp - 0x1c]
sub dword [esi + 0xb8], ebx
lea eax, [ecx + ebx]
movups xmm0, xmmword [edx + ecx]
mov ebx, edi
mov edi, dword [ebp - 0x2c]
movups xmmword [edx + ebx], xmm0
cmp eax, ebx
setg bl
cmp edi, ecx
setg bh
test bl, bh
jne 0x4bf925
mov esi, dword [esi + 0x40]
cmp edi, esi
jge 0x4bfb72
cmp eax, esi
jge 0x4bfb72
cmp dword [ebp - 0x28], 0x11
mov esi, dword [ebp - 0x1c]
jge 0x4bf72f
cmp dword [esi + 0xb8], 0
jle 0x4bf75e
mov dword [ebp - 0x24], edi
mov edi, dword [ebp - 0x24]
jmp 0x4bf95e
mov ebx, dword [ebp - 0x24]
add ebx, edx
add ecx, edx
mov eax, dword [ebp - 0x28]
cmp eax, 0x21
jae 0x4bf748
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [ebx + 0x10], xmm0
jmp 0x4bf71b
add ebx, 0x10
add ecx, 0x10
add eax, 0xfffffff0
push eax
push ecx
push ebx
call fcn.00543ce0
add esp, 0xc
jmp 0x4bf71b
mov dword [esi], 0xe
xor eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov dword [esi + 0x34], edi
mov eax, dword [ebp - 0x28]
mov dword [esi + 4], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005412b6
mov eax, dword [ebp - 0x20]
add esp, 0x44
pop esi
pop edi
pop ebx
pop ebp
ret
cmp eax, 0x7ffffffc
jg 0x4bfe19
mov edi, eax
mov ecx, dword [ebp - 0x50]
sub ecx, edx
mov eax, dword [ebp - 0x28]
jge 0x4bfbd0
lea ecx, [eax - 4]
cmp ecx, 0x1b
ja 0x4bfe3c
mov edx, dword [esi + 0x248]
xor ecx, ecx
cmp dword [edx + 0x7c], 0
mov eax, edi
mov dword [ebp - 0x34], edx
jne 0x4bfe9d
movzx ecx, cl
mov edi, dword [edx + ecx*4 + 0xc4]
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x30], ecx
mov ecx, dword [edx + ecx*4 + 0x1c4]
mov dword [ebp - 0x2c], ecx
mov edi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x44]
movzx ecx, byte [edx + edi]
not ebx
sub eax, dword [ebp - 0x50]
add eax, ebx
mov ebx, dword [ecx*4 + 0x6e4b80]
and ebx, eax
imul ebx, edi
add ebx, dword [edx + edi*4 + 0x20]
mov dword [ebp - 0x48], ebx
mov ebx, esi
mov esi, dword [esi + 0xb4]
add dword [ebx + 0x48], esi
mov ebx, eax
sar ebx, cl
mov esi, dword [ebp - 0x2c]
mov esi, dword [esi + 0xc]
cmp ebx, esi
jge 0x4bfc97
cmp byte [edx + edi], 0
je 0x4bfc97
mov dword [ebp - 0x20], 0xfffffff4
mov ecx, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x28]
cmp byte [edx + edi], 0
mov esi, dword [ebp - 0x1c]
je 0x4bf773
mov eax, dword [edx + 0xa4]
test eax, eax
je 0x4bfe25
mov dword [ebp - 0x20], 0xfffffff5
cmp ebx, dword [ecx + 0xc]
jge 0x4bf773
add eax, dword [ebp - 0x48]
movsx edx, word [ecx + 0x18]
mov dword [ebp - 0x40], ecx
mov ecx, dword [esi + 0x60]
add ecx, dword [ebp - 0x24]
cmp ebx, edx
je 0x4bf8a7
push ebx
push dword [ebp - 0x40]
push edi
push eax
push ecx
call fcn.0053be30
add esp, 0x14
test eax, eax
je 0x4bfe89
sub dword [esi + 0xb8], eax
mov edi, dword [ebp - 0x24]
add edi, eax
cmp edi, dword [esi + 0x40]
jl 0x4bf71b
jmp 0x4bfe31
push edi
push eax
push ecx
call fcn.00543ce0
add esp, 0xc
mov eax, edi
jmp 0x4bf88e
mov eax, dword [esi + 0x14]
dec eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x3c], ebx
cmp dword [ebp - 0x34], 0xffffffff
je 0x4bfd87
mov ebx, dword [esi + 8]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x30], eax
mov eax, ebx
shr eax, 8
mov esi, dword [ebp - 0x1c]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x30]
movzx eax, byte [eax]
shld eax, ebx, 0x18
mov esi, dword [ebp - 0x1c]
mov dword [esi + 8], eax
add ecx, 0xfffffff8
mov esi, dword [ebp - 0x1c]
mov dword [esi + 0xc], ecx
mov esi, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x34]
mov dword [esi + 0x14], ebx
inc dword [ebp - 0x30]
mov esi, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x30]
mov dword [esi + 0x10], ebx
mov esi, dword [ebp - 0x1c]
dec dword [ebp - 0x34]
add edi, 8
cmp edi, edx
mov ebx, dword [ebp - 0x3c]
jae 0x4bf655
jmp 0x4bf8c0
mov ecx, dword [ebp - 0x28]
mov eax, dword [esi + 0x40]
mov edi, dword [ebp - 0x24]
mov ebx, ecx
test ecx, ecx
jle 0x4bf955
mov ecx, edi
sub ecx, dword [esi + 0x10c]
mov edx, dword [esi + 0x60]
and ecx, dword [esi + 0x44]
mov cl, byte [edx + ecx]
mov byte [edx + edi], cl
inc edi
lea ecx, [ebx - 1]
cmp eax, edi
jne 0x4bf92e
jmp 0x4bfe48
dec ebx
mov dword [ebp - 0x28], ebx
jmp 0x4bf71b
mov dword [esi], 7
cmp dword [esi + 0xc4], 0
je 0x4bff2e
mov dword [ebp - 0x14], 0xffffffff
mov edx, dword [esi + 8]
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x40], ecx
mov ecx, dword [esi + 0x14]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x68]
mov dword [ebp - 0x2c], ecx
lea ecx, [eax - 0x12]
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], eax
cmp ecx, 0xe
ja 0x4bf9e4
mov eax, dword [ebp - 0x40]
lea edi, [eax + 1]
mov eax, dword [ebp - 0x34]
lea ebx, [eax - 1]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
cmp ebx, 0xffffffff
je 0x4bff09
mov eax, edx
shr eax, 8
mov dword [esi + 8], eax
movzx eax, byte [edi - 1]
shrd edx, eax, 8
mov dword [esi + 8], edx
lea eax, [ecx - 8]
mov dword [esi + 0xc], eax
mov dword [esi + 0x14], ebx
mov dword [esi + 0x10], edi
inc edi
dec ebx
add ecx, 0xffffffe6
cmp ecx, 0xf
mov ecx, eax
jb 0x4bf9b0
mov ecx, eax
shr edx, cl
movzx ecx, dl
mov edi, dword [ebp - 0x2c]
lea ecx, [edi + ecx*4]
movzx ebx, byte [ecx]
cmp ebx, 9
jae 0x4bfb4e
movzx edx, bl
add edx, eax
mov dword [esi + 0xc], edx
movzx eax, word [ecx + 2]
mov dword [ebp - 0x14], eax
movzx ecx, byte [eax*8 + 0x6e1312]
movzx ebx, byte [eax*8 + 0x6e1313]
movsx edx, byte [eax*8 + 0x6e1314]
mov dword [ebp - 0x20], edx
movzx edi, byte [eax*8 + 0x6e1315]
movzx edx, word [eax*8 + 0x6e1316]
mov dword [ebp - 0x28], edx
movzx eax, word [eax*8 + 0x6e1318]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x20]
mov dword [esi + 0x10c], eax
mov dword [esi + 0xb4], edi
mov eax, dword [esi + 0x74]
mov al, byte [eax + edi]
mov byte [esi + 0x104], al
xor eax, eax
mov edi, 0
test ecx, ecx
jne 0x4bfb1a
test ebx, ebx
jne 0x4bfa97
add eax, dword [ebp - 0x2c]
mov dword [esi + 0x108], eax
dec dword [esi + 0xc4]
add edi, dword [ebp - 0x28]
jne 0x4bf30a
mov dword [ebp - 0x28], 0
jmp 0x4bf52d
mov eax, ebx
mov ecx, dword [esi + 0xc]
mov ebx, 0x20
sub ebx, ecx
mov dword [ebp - 0x20], eax
cmp ebx, eax
jb 0x4bff49
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
shr eax, cl
mov ebx, dword [ebp - 0x20]
and eax, dword [ebx*4 + 0x6e4b80]
add ecx, ebx
mov dword [esi + 0xc], ecx
jmp 0x4bfa73
add eax, 8
mov esi, dword [ebp - 0x1c]
mov dword [esi + 0xc], eax
shr edx, 8
and edx, dword [ebx*4 + 0x6e4b60]
and edx, 0x7f
lea edx, [ecx + edx*4]
movzx ecx, word [ecx + 2]
lea ecx, [edx + ecx*4]
mov bl, byte [ecx]
jmp 0x4bf5f6
mov eax, ebx
not eax
xor edx, edx
inc edx
mov ecx, ebx
shr edx, cl
mov dword [esi + 0xb4], edx
mov ecx, dword [esi + 0x48]
add eax, ecx
and eax, 3
mov eax, dword [esi + eax*4 + 0x4c]
mov dword [esi + 0x10c], eax
sub ecx, edx
mov dword [esi + 0x48], ecx
jmp 0x4bf678
mov edx, ecx
mov dword [ebp - 0x20], ebx
mov ecx, dword [esi + 0xc]
mov edi, 0x20
sub edi, ecx
cmp edi, edx
mov ebx, edx
jb 0x4bffa3
mov edi, dword [ebp - 0x38]
mov edi, dword [edi]
shr edi, cl
and edi, dword [ebx*4 + 0x6e4b80]
add ecx, ebx
mov dword [esi + 0xc], ecx
mov ebx, dword [ebp - 0x20]
jmp 0x4bfa6f
add eax, 8
mov dword [esi + 0xc], eax
shr edx, 8
and edx, dword [ebx*4 + 0x6e4b60]
and edx, 0x7f
lea edx, [ecx + edx*4]
movzx ecx, word [ecx + 2]
lea ecx, [edx + ecx*4]
mov bl, byte [ecx]
jmp 0x4bf9fd
mov esi, dword [ebp - 0x1c]
jmp 0x4bf925
mov eax, dword [edi + 4]
lea esi, [eax - 1]
xor edx, edx
dec edx
mov ecx, edx
add cl, 9
mov ebx, esi
sar ebx, cl
inc edx
test ebx, ebx
jne 0x4bfb83
mov dword [edi + 0x98], edx
test eax, eax
jle 0x4bfbe6
xor eax, eax
inc eax
mov ecx, edx
shl eax, cl
mov dword [ebp - 0x20], eax
xor ebx, ebx
xor eax, eax
dec ebx
mov ecx, ebx
inc ebx
cmp dword [edi + ecx*4 + 0x60], eax
jl 0x4bfbaa
mov esi, eax
mov ecx, edx
sar esi, cl
mov byte [edi + esi + 0x9c], bl
add eax, dword [ebp - 0x20]
cmp eax, dword [edi + 4]
jl 0x4bfba9
mov edx, dword [edi + 0x98]
jmp 0x4bfbe6
mov dword [ebp - 0x2c], ecx
mov edi, dword [esi + 0x24c]
mov eax, dword [edi + 0x98]
mov edx, eax
cmp eax, 0xffffffff
je 0x4bfb7a
mov eax, dword [ebp - 0x2c]
mov ecx, edx
sar eax, cl
movzx eax, byte [edi + eax + 0x9c]
dec eax
mov edx, dword [ebp - 0x2c]
mov ecx, eax
inc eax
cmp dword [edi + ecx*4 + 0x60], edx
jle 0x4bfbf9
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x2c]
add ecx, edx
cmp dword [edi + 4], ecx
jl 0x4bfc67
mov esi, dword [ebp - 0x1c]
mov ecx, dword [esi + 0x48]
mov edx, ecx
and edx, 3
mov ebx, dword [esi + 0x10c]
mov dword [esi + edx*4 + 0x4c], ebx
inc ecx
mov dword [esi + 0x48], ecx
mov ecx, dword [ebp - 0x28]
sub dword [esi + 0xb8], ecx
mov dword [edi + 8], eax
mov edx, dword [ebp - 0x2c]
sub edx, dword [edi + eax*4 + 0x58]
mov dword [edi + 0xc], edx
mov dword [edi + 0x10], ecx
mov dword [edi + 0x14], 0
mov ecx, esi
mov edi, dword [ebp - 0x24]
mov edx, edi
call fcn.00670030
add edi, eax
mov eax, edi
cmp edi, dword [esi + 0x40]
jge 0x4bfc73
mov edi, eax
mov esi, dword [ebp - 0x1c]
jmp 0x4bf71b
mov dword [ebp - 0x20], 0xffffffee
jmp 0x4bf773
mov esi, dword [ebp - 0x1c]
mov dword [esi], 0xf
xor ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
mov edi, eax
jmp 0x4bf76a
mov dword [esi], 0xd
dec dword [ebp - 0x28]
jmp 0x4bf764
mov dword [ebp - 0x4c], ebx
mov edi, eax
mov dword [ebp - 0x20], 0xfffffff4
mov eax, dword [ebp - 0x34]
movzx eax, byte [eax + 0xc0]
cmp eax, 2
jae 0x4bfcc0
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x4c]
jmp 0x4bf835
mov ebx, eax
xor eax, eax
inc eax
shl eax, cl
and eax, 0xfffffffe
imul esi, eax
sub edi, esi
xor edx, edx
jmp 0x4bfce0
mov esi, edi
mov eax, edx
inc eax
mov edi, esi
mov edx, eax
cmp ebx, eax
je 0x4bfcb2
cmp dword [ebp - 0x30], edx
je 0x4bfcd3
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax + edx*4 + 0xc4]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x3c], ecx
movzx ecx, byte [ecx + eax]
test ecx, ecx
je 0x4bfcd3
mov eax, dword [ebp - 0x34]
mov esi, dword [eax + edx*4 + 0x1c4]
xor eax, eax
inc eax
shl eax, cl
and eax, 0xfffffffe
mov dword [ebp - 0x40], esi
imul eax, dword [esi + 0xc]
mov esi, edi
sub esi, eax
jge 0x4bfcd5
mov esi, dword [ecx*4 + 0x6e4b80]
mov ebx, edi
and esi, edi
sar ebx, cl
mov ecx, dword [ebp - 0x28]
imul esi, ecx
mov edx, dword [ebp - 0x3c]
add esi, dword [edx + ecx*4 + 0x20]
mov dword [ebp - 0x48], esi
mov ecx, dword [ebp - 0x40]
jmp 0x4bf835
lea eax, [ebp - 0x18]
push eax
push edx
push dword [ebp - 0x38]
call fcn.006878f0
add esp, 0xc
test eax, eax
je 0x4bfd7a
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
jmp 0x4bf663
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x48]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x44]
mov dword [eax + 0xc], ecx
mov ecx, dword [ebp - 0x40]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp - 0x34]
jmp 0x4bfda8
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0xc8]
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 0xc8], ecx
mov ecx, dword [ebp - 0x20]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x48]
mov dword [eax + 0xc], ecx
mov ecx, dword [ebp - 0x44]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp - 0x40]
mov dword [eax + 0x14], ecx
mov dword [ebp - 0x20], 2
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x24]
jmp 0x4bf76a
mov ecx, esi
call fcn.00670780
test eax, eax
jne 0x4bf54f
mov dword [ebp - 0x20], 2
jmp 0x4bfdb5
mov bl, al
mov ecx, esi
call fcn.00670430
test eax, eax
je 0x4bfdab
mov esi, dword [ebp - 0x1c]
cmp dword [esi + 0xb0], 0
mov eax, ebx
je 0x4bf352
jmp 0x4bf313
mov ecx, esi
call fcn.00670430
test eax, eax
je 0x4bfdab
mov esi, dword [ebp - 0x1c]
cmp dword [esi + 0xb0], 0
jne 0x4bf263
jmp 0x4bf313
mov dword [ebp - 0x20], 0xfffffff0
jmp 0x4bf773
mov dword [ebp - 0x20], 0xffffffed
jmp 0x4bf773
mov dword [esi], 0xf
jmp 0x4bf764
mov dword [ebp - 0x20], 0xfffffff4
jmp 0x4bf773
mov dword [esi], 0x10
dec ebx
mov dword [ebp - 0x28], ebx
jmp 0x4bf764
mov eax, dword [eax + 4]
mov dword [ebp - 0x50], eax
jmp 0x4bf1ba
add ecx, 8
mov esi, dword [ebp - 0x1c]
mov dword [esi + 0xc], ecx
shr edx, 8
and edx, dword [ebx*4 + 0x6e4b60]
and edx, 0x7f
lea edx, [eax + edx*4]
movzx eax, word [eax + 2]
lea eax, [edx + eax*4]
mov bl, byte [eax]
jmp 0x4bf223
xor eax, eax
cmp dword [esi + 0x10c], 0x79
jge 0x4bf88e
jmp 0x4bf773
mov ecx, dword [esi + 0x44]
mov esi, dword [ebp - 0x24]
lea edx, [esi - 2]
and edx, ecx
dec esi
and esi, ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + 0x60]
movzx edx, byte [ecx + edx]
movzx ecx, byte [ecx + esi]
mov esi, dword [ebp - 0x1c]
mov esi, dword [esi + 0x6c]
mov dl, byte [esi + edx + 0x100]
or dl, byte [esi + ecx]
mov esi, dword [ebp - 0x1c]
movzx ecx, dl
mov edx, dword [ebp - 0x34]
mov cl, byte [edx + ecx + 0x80]
jmp 0x4bf7c6
mov dword [ebp - 0x24], edi
cmp eax, 9
jne 0x4bfeee
mov esi, dword [ebp - 0x1c]
jmp 0x4bf52d
mov dword [ebp - 0x20], 0xffffffe1
cmp eax, 0xa
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
jne 0x4bf773
jmp 0x4bf928
lea eax, [ebp - 0x14]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
push eax
call fcn.004c0000
add esp, 4
test eax, eax
je 0x4bfdab
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1c]
jmp 0x4bfa0c
mov ecx, esi
call fcn.00670120
mov dword [ebp - 0x20], 2
test eax, eax
jne 0x4bf95e
jmp 0x4bf76a
mov eax, dword [esi + 0x14]
dec eax
mov dword [ebp - 0x30], eax
mov esi, dword [ebp - 0x1c]
cmp dword [ebp - 0x30], 0xffffffff
je 0x4bfd60
mov eax, dword [esi + 8]
mov dword [ebp - 0x3c], eax
mov edx, dword [esi + 0x10]
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x3c]
shr eax, 8
mov dword [esi + 8], eax
movzx eax, byte [edx]
mov edx, dword [ebp - 0x3c]
shld eax, edx, 0x18
mov dword [esi + 8], eax
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov edx, dword [ebp - 0x30]
mov dword [esi + 0x14], edx
mov edx, dword [ebp - 0x4c]
inc edx
mov dword [esi + 0x10], edx
dec dword [ebp - 0x30]
add ebx, 8
cmp ebx, dword [ebp - 0x20]
jae 0x4bfab3
jmp 0x4bff53
mov dword [ebp - 0x3c], edi
mov esi, dword [esi + 0x14]
dec esi
mov dword [ebp - 0x30], esi
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], ebx
cmp dword [ebp - 0x30], 0xffffffff
je 0x4bfd60
mov ebx, dword [esi + 8]
mov edx, dword [esi + 0x10]
mov edi, ebx
shr edi, 8
mov dword [esi + 8], edi
movzx edi, byte [edx]
shld edi, ebx, 0x18
mov dword [esi + 8], edi
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov ebx, dword [ebp - 0x30]
mov dword [esi + 0x14], ebx
inc edx
mov dword [esi + 0x10], edx
dec ebx
mov dword [ebp - 0x30], ebx
mov edx, dword [ebp - 0x3c]
add edx, 8
mov ebx, dword [ebp - 0x4c]
mov dword [ebp - 0x3c], edx
cmp edx, ebx
jae 0x4bfb38
jmp 0x4bffb0