Function at 0x6be5f0
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x190
mov esi, esp
mov dword [esi + 0x178], ebp
nop
mov edi, dword [ebp + 8]
mov dword [esi + 0x17c], esp
mov dword [esi + 0x188], 0xffffffff
lea eax, [esi + 0x180]
mov dword [esi + 0x184], 0x6c0090
mov ecx, dword fs:[0]
mov dword [esi + 0x180], ecx
mov dword fs:[0], eax
call fcn.006c0070
mov edx, dword [0x874bc8]
mov ecx, dword [0x874bb4]
mov ebx, 0xe0db
sub ebx, eax
mov dword [esi + 0x24], ebx
sub ecx, ebx
add ecx, edx
call dword [0x834360]
call ecx
mov byte [edi], 0
mov ebx, eax
xor ebx, 0xd1c563fb
mov dword [esi + 0x1c], ebx
mov ecx, eax
xor ecx, 0xd1c563eb
mov edx, eax
xor edx, 0xd1c563e7
mov dword [esi + 8], ecx
mov dword [edi + ecx], 0
mov ecx, edi
mov edi, eax
xor edi, 0xd1c563f0
mov dword [esi + 0x30], edx
mov dword [ecx + edx], edi
mov byte [ecx + ebx], 0
mov edx, ecx
mov ecx, eax
xor ecx, 0xd1c563d3
mov dword [edx + ecx], 0
mov ecx, eax
xor ecx, 0xd1c563e3
mov edx, eax
xor edx, 0xd1c563cf
mov dword [esi + 0xc], edi
mov dword [esi + 0x80], edx
mov ebx, dword [ebp + 8]
mov dword [ebx + edx], edi
mov dword [esi + 0x28], ecx
mov edx, dword [ebp + 8]
mov byte [edx + ecx], 0
mov ecx, eax
xor ecx, 0xd1c563cb
mov dword [esi + 0xac], ecx
mov byte [edx + ecx], 0
mov ecx, eax
xor ecx, 0xd1c563c7
mov dword [esi + 0xa8], ecx
mov dword [edx + ecx], 0
pxor xmm0, xmm0
movdqa xmmword [esi + 0x40], xmm0
mov dword [esi + 0x14], eax
xor eax, 0xd1c563db
mov dword [esi + 0xc8], 0x7e81c4
lea ecx, [esi + 0x40]
mov edx, dword [esi + 0x1c]
mov dword [esi + edx + 0xc8], ecx
lea ecx, [esi + 0xc8]
mov dword [esi + 0x10], eax
mov dword [esi + eax + 0xc8], ecx
mov dword [esi + 0x188], 0x16
push ecx
call fcn.006e53f0
add esp, 4
nop
cmp byte [0x889bcc], 0
jne 0x6be79a
nop
mov eax, dword [esi + 0x10]
mov edi, dword [esi + eax + 0xc8]
test edi, edi
je 0x6be79a
xor ebx, ebx
lea eax, [esi + 0xc8]
cmp edi, eax
setne bl
mov eax, dword [edi]
mov ecx, dword [esi + 0x14]
xor ecx, 0xd1c563ef
mov ecx, dword [eax + ecx]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
mov ecx, edi
push ebx
call dword [esi + 0x18]
nop
mov ecx, dword [esi + 0x14]
mov eax, ecx
xor eax, 0xd1c563f7
mov dword [esi + 0x2c], eax
mov eax, dword [esi + eax + 0x40]
shr eax, cl
mov ecx, dword [ebp + 8]
mov byte [ecx], al
pxor xmm0, xmm0
movdqa xmmword [esi + 0xb0], xmm0
mov dword [esi + 0xc8], 0x7e8254
lea ecx, [esi + 0xb0]
mov eax, dword [esi + 0x1c]
mov dword [esi + eax + 0xc8], ecx
lea eax, [esi + 0xc8]
mov ecx, dword [esi + 0x10]
mov dword [esi + ecx + 0xc8], eax
mov dword [esi + 0x188], 0x15
push eax
call fcn.006e53f0
add esp, 4
nop
mov eax, dword [esi + 0x10]
mov edi, dword [esi + eax + 0xc8]
test edi, edi
je 0x6be83f
xor ebx, ebx
lea eax, [esi + 0xc8]
cmp edi, eax
setne bl
mov eax, dword [edi]
mov ecx, dword [esi + 0x14]
xor ecx, 0xd1c563ef
mov ecx, dword [eax + ecx]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
mov ecx, edi
push ebx
call dword [esi + 0x18]
nop
mov dword [esi + 0x188], 0xb
lea ecx, [esi + 0xc8]
push 1
call fcn.00473690
nop
mov edx, dword [esi + 0x14]
xor edx, 0xd1c563ef
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esi + ecx + 0x40], eax
mov ecx, dword [esi + 0x1c]
mov dword [esi + edx + 0x40], ecx
mov eax, dword [esi + ecx + 0xb0]
mov dword [esi + 0x40], eax
mov dword [esi + 0x18], edx
lea edx, [esi + edx + 0xc8]
mov byte [esi + ecx + 0x40], 0
mov dword [esi + 0x188], 0x14
push ecx
lea eax, [esi + 0x40]
push eax
mov dword [esi + 0x78], edx
push edx
call fcn.0058a540
add esp, 0xc
nop
mov eax, dword [esi + 8]
mov eax, dword [esi + eax + 0x40]
cmp eax, dword [esi + 0xc]
jbe 0x6be909
mov ecx, eax
xor ecx, 1
mov edx, eax
and edx, 1
lea edx, [ecx + edx*2]
mov ebx, dword [esi + 0x14]
mov ecx, ebx
xor ecx, 0xd1c56c00
cmp edx, ecx
mov ecx, dword [esi + 0x40]
jbe 0x6be8fe
mov edx, ebx
xor edx, 0x2e3a9c03
lea edi, [ecx + edx]
mov ecx, dword [ecx + edx]
sub edi, ecx
mov edx, ebx
xor edx, 0xd1c563df
cmp edi, edx
jae 0x6bf7c3
mov edx, eax
mov edi, dword [esi + 0x10]
xor edx, edi
and eax, edi
lea edx, [edx + eax*2]
nop
push edx
push ecx
call fcn.0071996d
add esp, 8
nop
mov eax, dword [esi + 0x14]
xor eax, 0xd1c563f3
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
mov dword [esi + edx + 0x40], ecx
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x18]
mov dword [esi + edx + 0x40], ecx
mov dword [esi + 0xc4], eax
mov eax, dword [esi + eax + 0xb0]
mov dword [esi + 0x40], eax
mov byte [esi + ecx + 0x40], 0
mov dword [esi + 0x188], 0x13
push ecx
lea eax, [esi + 0x40]
push eax
push dword [esi + 0x78]
call fcn.0058a540
add esp, 0xc
nop
mov eax, dword [esi + 8]
mov eax, dword [esi + eax + 0x40]
cmp eax, dword [esi + 0xc]
jbe 0x6be9ba
mov ecx, eax
xor ecx, 1
mov edx, eax
not edx
and edx, 0x7ffffffe
or edx, ecx
not edx
lea edx, [ecx + edx*2]
mov ebx, dword [esi + 0x14]
mov ecx, ebx
xor ecx, 0xd1c56c00
cmp edx, ecx
mov ecx, dword [esi + 0x40]
jbe 0x6be9af
mov edx, ebx
xor edx, 0x2e3a9c03
lea edi, [ecx + edx]
mov ecx, dword [ecx + edx]
sub edi, ecx
mov edx, ebx
xor edx, 0xd1c563df
cmp edi, edx
jae 0x6bf7d3
add eax, dword [esi + 0x10]
mov edx, eax
nop
push edx
push ecx
call fcn.0071996d
add esp, 8
nop
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esi + ecx + 0x40], eax
mov ecx, dword [esi + 0x1c]
mov eax, dword [esi + 0x18]
mov dword [esi + eax + 0x40], ecx
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + eax + 0xb0]
mov dword [esi + 0x40], eax
mov byte [esi + ecx + 0x40], 0
mov dword [esi + 0x188], 0x12
push ecx
lea eax, [esi + 0x40]
push eax
push dword [esi + 0x78]
call fcn.0058a540
add esp, 0xc
nop
mov eax, dword [esi + 8]
mov ecx, dword [esi + eax + 0x40]
cmp ecx, dword [esi + 0xc]
jbe 0x6bea4c
lea edx, [ecx + 1]
mov ebx, dword [esi + 0x14]
mov eax, ebx
xor eax, 0xd1c56c00
cmp edx, eax
mov eax, dword [esi + 0x40]
jbe 0x6bea41
mov edx, ebx
xor edx, 0x2e3a9c03
lea edi, [eax + edx]
mov eax, dword [eax + edx]
sub edi, eax
mov edx, ebx
xor edx, 0xd1c563df
cmp edi, edx
jae 0x6bf7e3
add ecx, dword [esi + 0x10]
mov edx, ecx
nop
push edx
push eax
call fcn.0071996d
add esp, 8
nop
mov eax, dword [esi + 0x30]
lea ecx, [esi + eax]
add ecx, 0xc8
mov dword [esi + 0x188], 0x11
mov dword [esi + 0x3c], ecx
lea eax, [esi + 0x40]
push eax
call fcn.0048ab60
nop
mov eax, dword [esi + 0xc8]
mov ecx, dword [esi + 0x1c]
mov eax, dword [eax + ecx]
mov dword [esi + eax + 0xc8], 0x7d1e70
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + ecx]
mov ecx, dword [esi + 0x14]
mov edx, ecx
xor edx, 0x2e3a9c67
lea ebx, [esi + eax]
add ebx, 0xc8
mov dword [esi + 0x7c], edx
add eax, edx
mov edx, ecx
xor edx, 0x2e3a9c03
mov dword [esi + 0x34], edx
mov dword [edx + ebx], eax
mov ebx, dword [esi + 0x3c]
mov dword [ebx], 0x7d2014
mov eax, dword [0x874bd4]
mov edi, dword [0x874bac]
sub edi, dword [esi + 0x24]
add edi, eax
xor ecx, 0xd1c56397
lea eax, [esi + ecx]
add eax, 0xc8
mov dword [esi + 0x70], eax
mov dword [esi + 0x188], 0xffffffff
mov ecx, edi
call dword [0x834360]
mov ecx, ebx
call edi
mov dword [ebx], 0x7522f4
mov ebx, dword [esi + 0x14]
xor ebx, 0xd1c563b3
mov dword [esi + 0x88], ebx
mov ebx, dword [esi + ebx + 0xc8]
test ebx, ebx
je 0x6beb61
nop
mov eax, dword [esi + 0x1c]
mov edi, dword [ebx + eax]
test edi, edi
je 0x6beb54
nop
mov eax, dword [edi]
mov ecx, dword [esi + 0x2c]
mov ecx, dword [eax + ecx]
mov dword [esi + 0x20], ecx
call dword [0x834360]
mov ecx, edi
call dword [esi + 0x20]
test eax, eax
je 0x6beb54
nop
mov ecx, dword [eax]
mov edi, dword [ecx]
mov ecx, edi
mov dword [esi + 0x20], eax
call dword [0x834360]
mov ecx, dword [esi + 0x20]
push 1
call edi
nop
push dword [esi + 0x2c]
push ebx
call fcn.0071996d
add esp, 8
nop
mov eax, dword [esi + 0x70]
mov dword [eax], 0x751858
mov dword [esi + 0x188], 3
push eax
call fcn.0071af3f
add esp, 4
nop
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 0x1c]
lea edi, [eax + ecx]
lea eax, [esi + 0x40]
cmp edi, eax
nop
mov ecx, dword [esi + 0xc]
je 0x6bec31
nop
mov eax, dword [ebp + 8]
mov edx, dword [esi + 0x30]
mov eax, dword [eax + edx]
cmp eax, ecx
jbe 0x6bebea
lea edx, [eax + 1]
mov ebx, dword [esi + 0x14]
mov ecx, ebx
xor ecx, 0xd1c56c00
cmp edx, ecx
mov ecx, dword [edi]
jbe 0x6bebdf
nop
mov edx, dword [esi + 0x34]
mov edx, dword [ecx + edx]
mov dword [esi + 0x20], edx
add ecx, dword [esi + 0x34]
sub ecx, dword [esi + 0x20]
xor ebx, 0xd1c563df
cmp ecx, ebx
jae 0x6bf813
add eax, dword [esi + 0x10]
mov edx, eax
mov ecx, dword [esi + 0x20]
nop
push edx
push ecx
call fcn.0071996d
add esp, 8
nop
mov eax, dword [0x874bc0]
mov ecx, dword [0x874ba0]
sub ecx, dword [esi + 0x24]
add ecx, eax
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
push dword [esi + 0x30]
lea eax, [esi + 0x40]
push eax
push edi
call ecx
add esp, 0xc
mov eax, dword [esi + 0x18]
mov dword [esi + eax + 0x40], 0
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [esi + eax + 0x40], ecx
mov byte [esi + 0x40], 0
nop
mov eax, dword [esi + 8]
mov eax, dword [esi + eax + 0x40]
cmp eax, ecx
jbe 0x6bec90
lea edx, [eax + 1]
mov ebx, dword [esi + 0x14]
mov ecx, ebx
xor ecx, 0xd1c56c00
cmp edx, ecx
mov ecx, dword [esi + 0x40]
jbe 0x6bec7b
nop
mov edx, dword [esi + 0x34]
mov edi, dword [ecx + edx]
add ecx, edx
sub ecx, edi
mov edx, ebx
xor edx, 0xd1c563df
cmp ecx, edx
jae 0x6bf7f3
mov ecx, eax
mov edx, dword [esi + 0x10]
xor ecx, edx
and eax, edx
lea edx, [ecx + eax*2]
mov ecx, edi
nop
push edx
push ecx
call fcn.0071996d
add esp, 8
mov dword [esi + 0x188], 0x10
pxor xmm0, xmm0
movdqa xmmword [esi + 0xb0], xmm0
mov dword [esi + 0xc8], 0x7e82c4
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xb0]
mov dword [esi + eax + 0xc8], ecx
lea eax, [esi + 0xc8]
mov ecx, dword [esi + 0x10]
mov dword [esi + ecx + 0xc8], eax
mov dword [esi + 0x188], 0x10
push eax
call fcn.006e53f0
add esp, 4
nop
mov eax, dword [esi + 0x10]
mov edi, dword [esi + eax + 0xc8]
test edi, edi
je 0x6bed16
xor ebx, ebx
lea eax, [esi + 0xc8]
cmp edi, eax
setne bl
mov eax, dword [edi]
mov ecx, dword [esi + 0x18]
mov ecx, dword [eax + ecx]
mov dword [esi + 0x20], ecx
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
mov ecx, edi
push ebx
call dword [esi + 0x20]
nop
mov eax, dword [esi + 0x14]
xor eax, 0x51c563fb
cmp dword [esi + 0xb0], eax
jae 0x6bed46
nop
mov eax, dword [esi + 0x18]
mov dword [esi + eax + 0x40], 0
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esi + ecx + 0x40], eax
mov byte [esi + 0x40], 0
jmp 0x6befee
nop
mov dword [esi + 0x188], 0xb
lea ecx, [esi + 0xc8]
push 1
call fcn.00473690
mov eax, dword [esi + 0x14]
mov ecx, eax
xor ecx, 0xd1c563fc
mov dword [esi + 0x90], ecx
mov ecx, eax
xor ecx, 0xd1c56c00
mov dword [esi + 0x8c], ecx
xor eax, 0xd1c563df
mov dword [esi + 0x74], eax
xor ebx, ebx
jmp 0x6beda3
add eax, dword [esi + 0x10]
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0071996d
add esp, 8
inc ebx
cmp ebx, dword [esi + 0x90]
jae 0x6beee6
nop
mov dword [esi + 0x40], 0x7e8334
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xb0]
mov dword [esi + eax + 0x40], ecx
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x20], ebx
mov dword [esi + eax + 0x40], ebx
lea eax, [esi + 0x40]
mov ecx, dword [esi + 0x10]
mov dword [esi + ecx + 0x40], eax
mov dword [esi + 0x188], 0xf
push eax
call fcn.006e53f0
add esp, 4
nop
mov eax, dword [esi + 0x10]
mov edi, dword [esi + eax + 0x40]
test edi, edi
nop
mov edx, dword [esi + 0x18]
lea ecx, [esi + 0x40]
je 0x6bee29
xor ebx, ebx
cmp edi, ecx
setne bl
mov eax, dword [edi]
mov ecx, dword [eax + edx]
mov dword [esi + 0x38], ecx
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
mov ecx, edi
push ebx
call dword [esi + 0x38]
mov edx, dword [esi + 0x18]
lea ecx, [esi + 0x40]
nop
mov dword [esi + edx + 0x40], 0
mov eax, dword [esi + 0xc]
mov edi, dword [esi + 8]
mov dword [esi + edi + 0x40], eax
mov byte [esi + 0x40], 0
mov dword [esi + 0x188], 0xd
sub esp, 0xc
movzx eax, byte [esi + 0x94]
mov byte [esp + 4], al
lea eax, [esi + 0xb0]
mov dword [esp + 8], eax
mov dword [esp], edx
call fcn.0045afa0
lea eax, [esi + 0x40]
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp dword [esi + edx + 0x40], ecx
jbe 0x6bee7c
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 0x18]
mov ecx, dword [esi + ecx + 0x40]
mov dword [esi + 0x188], 0xe
push ecx
push eax
push dword [esi + 0x78]
call fcn.0058a540
add esp, 0xc
nop
mov eax, dword [esi + 8]
mov eax, dword [esi + eax + 0x40]
cmp eax, dword [esi + 0xc]
nop
mov ebx, dword [esi + 0x20]
jbe 0x6beda2
nop
mov ecx, dword [esi + 0x40]
lea edx, [eax + 1]
cmp edx, dword [esi + 0x8c]
jbe 0x6bed97
nop
mov edx, dword [esi + 0x34]
mov edi, dword [ecx + edx]
add ecx, edx
sub ecx, edi
cmp ecx, dword [esi + 0x74]
jb 0x6bed90
nop
mov dword [esi + 0x188], 6
call fcn.006fce21
nop
mov dword [esi + 0x188], 0xd
lea eax, [esi + 0x40]
mov ecx, dword [esi + 0x3c]
push eax
call fcn.0048ab60
nop
mov eax, dword [esi + 0xc8]
mov ecx, dword [esi + 0x1c]
mov eax, dword [eax + ecx]
mov dword [esi + eax + 0xc8], 0x7d1e70
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + ecx]
mov ecx, eax
mov edx, dword [esi + 0x7c]
xor ecx, edx
and edx, eax
lea ecx, [ecx + edx*2]
add eax, esi
add eax, 0xc8
mov edx, dword [esi + 0x34]
mov dword [edx + eax], ecx
mov ebx, dword [esi + 0x3c]
mov dword [ebx], 0x7d2014
mov eax, dword [0x874bd4]
mov edi, dword [0x874bac]
sub edi, dword [esi + 0x24]
add edi, eax
mov dword [esi + 0x188], 0xffffffff
mov ecx, edi
call dword [0x834360]
mov ecx, ebx
call edi
mov dword [ebx], 0x7522f4
mov eax, dword [esi + 0x88]
mov ebx, dword [esi + eax + 0xc8]
test ebx, ebx
je 0x6befd1
nop
mov dword [0x874bf8], 0xca02e489
mov eax, dword [esi + 0x1c]
mov edi, dword [ebx + eax]
test edi, edi
je 0x6befc4
nop
mov eax, dword [edi]
mov ecx, dword [esi + 0x2c]
mov ecx, dword [eax + ecx]
mov dword [esi + 0x20], ecx
call dword [0x834360]
mov ecx, edi
call dword [esi + 0x20]
test eax, eax
je 0x6befc4
nop
mov ecx, dword [eax]
mov edi, dword [ecx]
mov ecx, edi
mov dword [esi + 0x20], eax
call dword [0x834360]
mov ecx, dword [esi + 0x20]
push 1
call edi
nop
push dword [esi + 0x2c]
push ebx
call fcn.0071996d
add esp, 8
nop
mov eax, dword [esi + 0x70]
mov dword [eax], 0x751858
mov dword [esi + 0x188], 7
push eax
call fcn.0071af3f
add esp, 4
nop
mov eax, dword [esi + 0x28]
add eax, dword [ebp + 8]
lea ecx, [esi + 0x40]
mov dword [esi + 0x28], eax
cmp eax, ecx
nop
mov ecx, dword [esi + 0xc]
je 0x6bf0b4
nop
mov eax, dword [ebp + 8]
mov edx, dword [esi + 0x80]
mov eax, dword [eax + edx]
cmp eax, ecx
jbe 0x6bf06b
lea ebx, [eax + 1]
mov edi, dword [esi + 0x14]
mov ecx, edi
xor ecx, 0xd1c56c00
cmp ebx, ecx
mov ecx, dword [esi + 0x28]
mov ecx, dword [ecx]
jbe 0x6bf056
nop
mov ebx, dword [esi + 0x34]
mov edx, dword [ecx + ebx]
add ecx, ebx
sub ecx, edx
xor edi, 0xd1c563df
cmp ecx, edi
jae 0x6bf823
nop
add eax, dword [esi + 0x10]
add eax, dword [0x88af28]
mov ebx, eax
mov ecx, edx
nop
push ebx
push ecx
call fcn.0071996d
add esp, 8
mov dword [esi + 0x188], 0xffffffff
nop
mov eax, dword [0x874bc0]
mov ecx, dword [0x874ba0]
sub ecx, dword [esi + 0x24]
add ecx, eax
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
push dword [esi + 0x30]
lea eax, [esi + 0x40]
push eax
push dword [esi + 0x28]
call ecx
add esp, 0xc
mov eax, dword [esi + 0x18]
mov dword [esi + eax + 0x40], 0
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [esi + eax + 0x40], ecx
mov byte [esi + 0x40], 0
nop
mov eax, dword [esi + 8]
mov eax, dword [esi + eax + 0x40]
cmp eax, ecx
jbe 0x6bf102
lea edx, [eax + 1]
mov edi, dword [esi + 0x14]
mov ecx, edi
xor ecx, 0xd1c56c00
cmp edx, ecx
mov ecx, dword [esi + 0x40]
jbe 0x6bf0f7
nop
mov edx, dword [esi + 0x34]
mov ebx, dword [ecx + edx]
add ecx, edx
sub ecx, ebx
mov edx, edi
xor edx, 0xd1c563df
cmp ecx, edx
jae 0x6bf803
add eax, dword [esi + 0x10]
mov edx, eax
mov ecx, ebx
nop
push edx
push ecx
call fcn.0071996d
add esp, 8
nop
mov eax, dword [ebp + 8]
cmp byte [eax], 1
jne 0x6bf607
pxor xmm0, xmm0
movdqa xmmword [esi + 0x40], xmm0
mov dword [esi + 0xc8], 0x7e83a4
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0x40]
mov dword [esi + eax + 0xc8], ecx
lea eax, [esi + 0xc8]
mov ecx, dword [esi + 0x10]
mov dword [esi + ecx + 0xc8], eax
mov dword [esi + 0x188], 0xc
push eax
call fcn.006e53f0
add esp, 4
nop
mov eax, dword [esi + 0x10]
mov edi, dword [esi + eax + 0xc8]
test edi, edi
je 0x6bf18f
xor ebx, ebx
lea eax, [esi + 0xc8]
cmp edi, eax
setne bl
mov eax, dword [edi]
mov ecx, dword [esi + 0x18]
mov ecx, dword [eax + ecx]
mov dword [esi + 8], ecx
mov dword [esi + 0x188], 0xffffffff
call dword [0x834360]
mov ecx, edi
push ebx
call dword [esi + 8]
nop
mov eax, dword [esi + 0x1c]
mov eax, dword [esi + eax + 0x40]
mov dword [esi + 0x8c], eax
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + eax + 0x40]
mov dword [esi + 0x78], ecx
mov eax, dword [esi + eax + 0x44]
mov dword [esi + 0x90], eax
mov eax, dword [0x874bf4]
mov ebx, dword [esi + 0x14]
xor eax, ebx
cmp eax, 0x572c198d
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 0xac]
movzx eax, byte [eax + ecx]
mov ecx, dword [0x7e847c]
jne 0x6bf1e2
nop
mov dword [0x874c04], 0x43e5721c
jmp 0x6bf233
mov edx, ebx
shr edx, 2
mov edi, ebx
shl edi, 0x1e
xor edi, ebx
movd xmm0, edi
movd xmm1, edx
punpckldq xmm0, xmm1
movd xmm1, ebx
punpcklqdq xmm0, xmm1
pxor xmm0, xmmword [0x7e81a0]
pshufd xmm1, xmm1, 0x44
pxor xmm1, xmmword [0x7e81b0]
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0xee
paddq xmm0, xmm1
movd edx, xmm0
add ecx, edx
add ecx, 0x7e847e
mov dword [esi + 0x2c], ecx
nop
mov ecx, dword [0x7e8488]
mov dword [esi + 0x18], ecx
mov ecx, 0x7e8480
add ecx, dword [0x7e8480]
mov dword [esi + 0x20], ecx
test al, al
je 0x6bf5a8
nop
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 0x88]
mov eax, dword [eax + ecx]
mov dword [esi + 0x7c], eax
cmp eax, dword [esi + 0xc]
jbe 0x6bf5a8
nop
mov eax, dword [0x874bf8]
mov ecx, dword [esi + 0x14]
xor eax, ecx
cmp eax, 0x1bc78776
mov edi, dword [0x88af44]
jne 0x6bf295
mov eax, edi
xor eax, 1
mov ecx, edi
and ecx, 1
lea ecx, [eax + ecx*2]
and edi, ecx
jmp 0x6bf2ba
mov eax, ecx
xor eax, 0x972a850c
xor ecx, 0x68d57af3
add ecx, eax
lea ecx, [ecx + edi*2]
shl edi, cl
shl edi, cl
mov eax, edi
sub eax, ecx
imul eax, ecx
mov edx, eax
sub edx, edi
and edx, eax
mov edi, edx
nop
mov eax, dword [ebp + 8]
mov edx, dword [esi + 0xa8]
mov eax, dword [eax + edx]
mov dword [esi + 0x84], eax
mov eax, dword [esi + 0x7c]
inc eax
mov dword [esi + 0xc0], eax
mov dword [0x88af44], ecx
xor ecx, ecx
mov dword [esi + 0x98], edi
test edi, edi
je 0x6bf39b
mov dword [esi + 8], 0
nop
mov eax, dword [0x874c04]
mov edx, dword [esi + 0x14]
xor eax, edx
xor ecx, ecx
cmp eax, 0x5ee470b6
setne cl
lea ecx, [ecx + ecx*8]
add ecx, 0xff6
mov edi, dword [esi + 0xc0]
cmp edi, ecx
jbe 0x6bf394
nop
mov edi, dword [esi + 0x34]
mov ebx, dword [esi + 0x84]
lea ecx, [ebx + edi]
mov ebx, dword [ebx + edi]
mov dword [esi + 0x84], ebx
sub ecx, ebx
xor edx, 0xd1c563df
cmp ecx, edx
jae 0x6bf833
cmp eax, 0xa30e1727
movzx edx, byte [0x7e848c]
jne 0x6bf570
xor ecx, ecx
neg dword [esi + 0x98]
sbb ecx, ecx
or cl, 1
mov eax, dword [esi + 8]
sub al, dl
mov edx, eax
xor dl, cl
and cl, al
add cl, cl
add cl, dl
add al, cl
inc al
mul cl
mov edx, eax
shl dl, cl
test dl, al
setne al
xor al, byte [0x889bcc]
mov dword [0x874c08], 0x19977d98
jmp 0x6bf589
mov ecx, edi
jmp 0x6bf598
nop
mov eax, dword [0x874bfc]
mov ebx, dword [esi + 0x14]
xor eax, ebx
mov edx, ebx
xor edx, 0x11c563fa
cmp eax, 0x280e398c
cmovne edx, ecx
mov eax, dword [esi + 0x20]
lea ecx, [eax + edx*4]
add ecx, dword [eax + edx*4]
mov dword [esi + 0x38], ecx
cmp dword [esi + 0x18], 0
jle 0x6bf2ed
nop
mov eax, dword [0x874c00]
xor eax, ebx
mov dword [esi + 0x74], eax
mov eax, ebx
xor al, 0xfc
mov byte [esi + 0x24], al
mov eax, dword [0x874c08]
xor eax, ebx
mov edi, dword [0x874c0c]
xor edi, ebx
xor ebx, 0xc49707ef
mov dword [esi + 0x3c], eax
cmp eax, 0x4bc3ae5c
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x70], ebx
lea edx, [ebx + eax - 1]
mov dword [esi + 0xa0], edx
lea eax, [eax + eax - 1]
mov dword [esi + 0xa4], eax
jne 0x6bf61d
mov dword [esi + 0x9c], edi
mov dword [esi + 0x80], 0
xor edx, edx
mov dword [esi + 8], 0
mov dword [esi + 0x28], 0
jmp 0x6bf4ae
mov ecx, dword [esi + 0x1c]
shl edx, cl
mov ecx, dword [esi + 0xa4]
sub ecx, edx
mov ebx, 0xffffffff
shl ebx, cl
not ebx
not al
and ah, al
sub ebx, dword [esi + 0x70]
mov cl, ah
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x28]
lea edi, [eax + edx*4]
add edi, dword [eax + edx*4]
mov dword [esi + 0x38], edi
mov dword [esi + 0x80], 0
mov eax, dword [esi + 8]
xor al, cl
mov dword [esi + 8], eax
mov eax, ebx
xor eax, 1
mov edx, ebx
or edx, 0xfffffffe
inc edx
test bl, 1
mov edi, 0
cmove edx, edi
sub eax, edx
inc eax
imul eax, edx
mov dword [0x874bf4], 0x7a222552
cmp dword [esi + 0x18], eax
mov edx, eax
jle 0x6bf2f4
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x30], edx
add eax, edx
cmp dword [esi + 0x74], 0x9708d07d
jne 0x6bf4f0
nop
mov ecx, dword [esi + 0x38]
sub ecx, eax
mov edx, dword [esi + 0x80]
sbb edx, 0
mov edi, ecx
neg edi
mov ebx, 0
sbb ebx, edx
mov ah, byte [eax]
jge 0x6bf4f9
mov ebx, dword [esi + 0x30]
mov cl, ah
jmp 0x6bf475
nop
mov ah, byte [eax]
xor edx, edx
xor ebx, ebx
jmp 0x6bf4fd
mov ebx, ecx
mov edx, ecx
movzx ecx, byte [esi + 0x24]
shl bl, cl
mov al, 0xff
mov ecx, ebx
shl al, cl
cmp dword [esi + 0x3c], 0x7e77ce51
jne 0x6bf539
nop
mov dword [0x874bf8], 0x707d585d
mov dword [esi + 0x28], 0
nop
mov ecx, dword [esi + 0x9c]
cmp ecx, 0xbf5048f7
je 0x6bf43d
jmp 0x6bf560
mov edi, edx
mov edx, dword [esi + 0x28]
mov ecx, edx
xor ecx, 1
and edx, 1
lea edx, [ecx + edx*2]
mov dword [esi + 0x28], edx
mov edx, edi
mov ecx, dword [esi + 0x9c]
cmp ecx, 0xbf5048f7
je 0x6bf43d
mov ebx, dword [esi + 0x30]
add ebx, dword [esi + 0xa0]
add ebx, edx
jmp 0x6bf453
nop
cmp dword [esi + 0x98], 0
sete cl
cmp byte [esi + 8], dl
setne al
and al, cl
or al, byte [0x889bcc]
and al, 1
mov byte [0x889bcc], al
mov eax, dword [esi + 0x7c]
add eax, dword [esi + 0x10]
mov ecx, eax
nop
push ecx
push dword [esi + 0x84]
call fcn.0071996d
add esp, 8
nop
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 0xa8]
mov edx, dword [esi + 0x8c]
mov dword [eax + ecx], edx
mov edx, dword [esi + 0x14]
mov ecx, edx
xor ecx, 0xd1c563c3
mov edi, dword [esi + 0x90]
mov dword [eax + ecx + 4], edi
mov edi, dword [esi + 0x78]
mov dword [eax + ecx], edi
mov ecx, edx
xor ecx, 0xd1c563bb
mov byte [eax + ecx], 0
xor edx, 0xd1c563b7
mov ecx, dword [esi + 0xc4]
mov dword [eax + edx], ecx
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0x88]
mov dword [eax + edx], ecx
mov ecx, dword [esi + 0xac]
mov byte [eax + ecx], 1
nop
mov ecx, dword [esi + 0x180]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp edi, 0xbf5048f7
jne 0x6bf6fe
xor ebx, ebx
xor edi, edi
mov dword [esi + 8], 0
mov dword [esi + 0x28], 0
jmp 0x6bf695
nop
mov dword [0x874bf8], 0x707d585d
xor edi, edi
nop
mov ecx, dword [esi + 0x1c]
shl edx, cl
mov ecx, dword [esi + 0xa4]
sub ecx, edx
mov ebx, 0xffffffff
shl ebx, cl
not ah
and al, ah
not ebx
sub ebx, dword [esi + 0x70]
mov edx, dword [esi + 0x20]
lea ecx, [edx + edi*4]
mov dword [esi + 0x28], edi
add ecx, dword [edx + edi*4]
mov dword [esi + 0x38], ecx
xor edi, edi
mov edx, dword [esi + 8]
xor dl, al
mov dword [esi + 8], edx
mov eax, ebx
xor eax, 1
and ebx, 1
lea ebx, [eax + ebx*2]
cmp ebx, dword [esi + 0x18]
jge 0x6bf2f4
mov eax, dword [esi + 0x2c]
add eax, ebx
cmp dword [esi + 0x74], 0x9708d07d
jne 0x6bf6c4
nop
mov ecx, dword [esi + 0x38]
sub ecx, eax
mov dword [esi + 0x30], edi
sbb edi, 0
mov edx, ecx
neg edx
mov edx, 0
sbb edx, edi
movzx eax, byte [eax]
jge 0x6bf6ce
mov edi, dword [esi + 0x30]
jmp 0x6bf679
nop
movzx eax, byte [eax]
xor edx, edx
xor ebx, ebx
jmp 0x6bf6d2
mov ebx, ecx
mov edx, ecx
movzx ecx, byte [esi + 0x24]
shl bl, cl
mov ah, 0xff
mov ecx, ebx
shl ah, cl
cmp dword [esi + 0x3c], 0x7e77ce51
je 0x6bf63d
mov edi, dword [esi + 0x28]
mov ecx, edi
xor ecx, 1
and edi, 1
lea edi, [ecx + edi*2]
jmp 0x6bf64a
xor edx, edx
xor ecx, ecx
mov dword [esi + 8], 0
mov dword [esi + 0x28], 0
jmp 0x6bf761
mov ebx, dword [esi + 0x28]
mov edi, ebx
xor edi, 1
and ebx, 1
lea ebx, [edi + ebx*2]
not ch
mov cl, byte [esi + 0x1c]
and cl, ch
add edx, dword [esi + 0xa0]
add edx, eax
sub edx, dword [esi + 0x70]
mov eax, dword [esi + 0x20]
lea edi, [eax + ebx*4]
mov dword [esi + 0x28], ebx
add edi, dword [eax + ebx*4]
mov dword [esi + 0x38], edi
mov ebx, ecx
xor ecx, ecx
mov eax, dword [esi + 8]
xor al, bl
mov dword [esi + 8], eax
mov eax, edx
xor eax, 1
and edx, 1
lea edx, [eax + edx*2]
cmp edx, dword [esi + 0x18]
jge 0x6bf2f4
mov eax, dword [esi + 0x2c]
lea ebx, [eax + edx]
cmp dword [esi + 0x74], 0x9708d07d
jne 0x6bf78d
nop
mov eax, dword [esi + 0x38]
sub eax, ebx
mov edi, ecx
sbb edi, 0
cmp eax, 1
sbb edi, 0
movzx ebx, byte [ebx]
jge 0x6bf745
mov byte [esi + 0x1c], bl
mov ebx, eax
jmp 0x6bf798
nop
movzx eax, byte [ebx]
mov byte [esi + 0x1c], al
xor eax, eax
xor ebx, ebx
movzx ecx, byte [esi + 0x24]
shl bl, cl
mov ch, 0xff
mov cl, bl
shl ch, cl
cmp dword [esi + 0x3c], 0x7e77ce51
jne 0x6bf712
nop
mov dword [0x874bf8], 0x707d585d
xor ebx, ebx
jmp 0x6bf720
nop
mov dword [esi + 0x188], 0
call fcn.006fce21
nop
mov dword [esi + 0x188], 1
call fcn.006fce21
nop
mov dword [esi + 0x188], 2
call fcn.006fce21
nop
mov dword [esi + 0x188], 5
call fcn.006fce21
nop
mov dword [esi + 0x188], 9
call fcn.006fce21
nop
mov dword [esi + 0x188], 4
call fcn.006fce21
nop
mov dword [esi + 0x188], 8
call fcn.006fce21
nop
mov dword [esi + 0x188], 0xa
call fcn.006fce21
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
call fcn.007311e0
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0x18c]
mov ebp, dword [esi + 0x178]
nop
mov eax, dword [esi + 0x10]
mov edi, dword [esi + eax + 0xc8]
test edi, edi
je 0x6bf9b3
xor ebx, ebx
lea eax, [esi + 0xc8]
cmp edi, eax
setne bl
mov eax, dword [edi]
mov ecx, dword [esi + 0x18]
mov ecx, dword [eax + ecx]
mov dword [esi + 0xc], ecx
call dword [0x834360]
mov ecx, edi
push ebx
call dword [esi + 0xc]
add esp, 0xc
pop ebp
ret