Function at 0x478fc0
Capabilities:
Check for time delay via queryperformancecounter
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x108
mov eax, dword [0x511014]
xor eax, ebp
mov dword [esp + 0x100], eax
mov eax, dword [ecx + 8]
mov dword [esp + 0x20], ecx
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x7c], ecx
cmp eax, ecx
mov dword [esp + 0x60], eax
je 0x47950c
mov ecx, dword [eax]
mov dword [esp + 0x74], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x70], ecx
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x6c], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x68], ecx
mov eax, dword [eax + 0x14]
mov dword [esp + 0x64], eax
mov al, byte [ebp + 0x10]
mov byte [esp + 0x5c], al
mov eax, dword [ebp + 0x1c]
mov dword [esp], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x20]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x28]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
lea edx, [eax + 8]
lea esi, [eax + 0xc]
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0xb0]
cmp eax, 0xffffffff
mov dword [esp + 0x10], edx
mov dword [esp + 8], esi
je 0x47948e
mov ecx, dword [edi + 0xb0]
mov esi, dword [esi]
mov edx, dword [edx]
sub esi, edx
sar esi, 5
cmp esi, ecx
jbe 0x47a850
shl ecx, 5
mov ecx, dword [edx + ecx + 0x10]
mov dword [esp + 0x78], ecx
mov ecx, dword [edi + 0xb0]
cmp eax, 0xffffffff
setne byte [esp + 0x5b]
cmp byte [esp + 0x5c], 0
je 0x47949a
mov eax, dword [esp + 0x20]
add eax, 4
mov dword [esp + 0x54], eax
cmp ecx, 0xffffffff
je 0x47961b
mov dword [esp + 0x4c], esp
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0xb0]
mov edi, dword [esp + 8]
mov ecx, dword [edi]
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
sub ecx, eax
sar ecx, 5
cmp ecx, ebx
jbe 0x47a5e3
mov esi, ebx
shl esi, 5
mov eax, dword [eax + esi + 0x18]
mov dword [eax + 0xb0], 0xffffffff
mov eax, dword [edi]
mov ecx, dword [edx]
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
sub eax, ecx
sar eax, 5
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], eax
cmp eax, ebx
jbe 0x47a5e3
mov eax, dword [esp + 4]
mov ecx, dword [esp]
mov dword [esp + 0x24], ecx
cmp dword [esp + 0x14], 0
jne 0x479173
mov edi, dword [esp + 0xc]
mov eax, edi
xor ecx, ecx
inc ecx
add eax, ecx
mov ebx, dword [esp + 0x18]
mov ecx, ebx
mov edx, 0x80000000
adc ecx, edx
cmp eax, 2
sbb ecx, 0
jb 0x47a855
mov edx, dword [esp + 4]
add edx, edi
mov edi, dword [esp]
adc edi, ebx
seto bl
mov eax, edi
sar eax, 0x1f
lea ecx, [eax - 0x80000000]
test bl, bl
cmove eax, edx
test bl, bl
cmove ecx, edi
mov dword [esp + 0x24], ecx
add esi, dword [esp + 0x1c]
cmp dword [esi + 0x14], 0
jne 0x47a11c
mov dword [esp + 0x2c], eax
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
mov edx, edi
xor ebx, ebx
inc ebx
add edx, ebx
mov ebx, ecx
mov eax, 0x80000000
adc ebx, eax
cmp edx, 2
sbb ebx, 0
mov edx, dword [esi]
mov esi, dword [esi + 4]
jb 0x47a8a9
add edx, edi
adc esi, ecx
seto bl
mov edi, esi
sar edi, 0x1f
lea ecx, [edi - 0x80000000]
test bl, bl
cmove edi, edx
test bl, bl
cmove ecx, esi
mov eax, dword [esp + 0x2c]
cmp edi, eax
sbb ecx, dword [esp + 0x24]
jge 0x479539
mov edi, dword [esp + 0x28]
lea edx, [edi + edi]
inc edx
cmp edx, dword [esp + 0x30]
jae 0x479710
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc]
add eax, ecx
mov ecx, dword [esp]
mov esi, dword [esp + 0x18]
adc ecx, esi
mov edi, esi
seto byte [esp + 0x1c]
mov dword [esp + 0x24], edx
mov edx, ecx
sar edx, 0x1f
lea ebx, [edx - 0x80000000]
cmp byte [esp + 0x1c], 0
cmove edx, eax
cmp byte [esp + 0x1c], 0
cmove ebx, ecx
mov eax, 0x80000000
dec eax
xor ecx, ecx
inc ecx
lea esi, [ecx - 2]
mov ecx, dword [esp + 0xc]
add ecx, esi
mov dword [esp + 0x38], ecx
mov ecx, edi
adc ecx, eax
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 4]
add esi, ecx
adc eax, dword [esp]
cmp esi, 0xfffffffe
sbb eax, 0xffffffff
setb byte [esp + 0x1c]
mov esi, ecx
xor esi, dword [esp + 0xc]
mov edi, dword [esp]
mov ecx, dword [esp + 0x18]
xor edi, ecx
or edi, esi
sete al
cmp dword [esp + 0x38], 0xfffffffe
sbb dword [esp + 0x2c], 0xffffffff
setb byte [esp + 0x2c]
cmovae ebx, ecx
cmovae edx, dword [esp + 0xc]
cmp dword [esp + 0x14], 0
setne ah
cmovne edx, dword [esp + 4]
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x24]
cmovne ebx, dword [esp]
mov dword [esp + 0x50], ebx
or ah, byte [esp + 0x2c]
or al, byte [esp + 0x1c]
or al, ah
mov byte [esp + 0x5a], al
mov eax, dword [esp + 0x28]
lea ebx, [eax + eax]
add ebx, 2
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x1c], eax
sub ecx, eax
sar ecx, 5
cmp ebx, dword [esp + 0x30]
mov dword [esp + 0x40], ecx
jae 0x47a601
cmp ecx, ebx
jbe 0x47a5e3
cmp ecx, edx
jbe 0x47a5e3
mov dword [esp + 0x24], edx
mov eax, edx
shl eax, 5
mov edx, dword [esp + 0x1c]
lea ecx, [edx + eax]
cmp dword [edx + eax + 0x14], 0
mov dword [esp + 0x2c], ebx
jne 0x47a620
mov eax, dword [ecx + 0xc]
mov ebx, dword [ecx + 8]
mov edx, ebx
xor esi, esi
inc esi
add edx, esi
mov esi, eax
mov edi, eax
mov eax, 0x80000000
adc edi, eax
cmp edx, 2
sbb edi, 0
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
jb 0x47a9d4
add edx, ebx
adc ecx, esi
seto bl
mov esi, ecx
sar esi, 0x1f
lea eax, [esi - 0x80000000]
test bl, bl
cmove esi, edx
mov dword [esp + 0x3c], esi
test bl, bl
cmove eax, ecx
mov dword [esp + 0x34], eax
mov ebx, dword [esp + 0x2c]
shl ebx, 5
add ebx, dword [esp + 0x1c]
cmp dword [ebx + 0x14], 0
jne 0x47a632
mov esi, dword [ebx + 0xc]
mov edi, dword [ebx + 8]
mov edx, edi
xor ecx, ecx
inc ecx
add edx, ecx
mov ecx, esi
mov eax, 0x80000000
adc ecx, eax
cmp edx, 2
sbb ecx, 0
mov edx, dword [ebx]
mov ebx, dword [ebx + 4]
jb 0x47aa0f
add edx, edi
adc ebx, esi
seto cl
mov edi, ebx
sar edi, 0x1f
lea esi, [edi - 0x80000000]
test cl, cl
cmove edi, edx
test cl, cl
cmove esi, ebx
mov eax, dword [esp + 0x3c]
cmp edi, eax
sbb esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x2c]
jl 0x4793ca
mov edi, eax
cmp ecx, edi
jbe 0x47a5e3
cmp byte [esp + 0x5a], 0
je 0x47aa6f
mov esi, edi
shl esi, 5
add esi, dword [esp + 0x1c]
cmp dword [esi + 0x14], 0
jne 0x47a608
mov dword [esp + 0x24], edi
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov edx, ecx
xor edi, edi
inc edi
add edx, edi
mov edi, eax
mov ebx, 0x80000000
adc edi, ebx
cmp edx, 2
sbb edi, 0
mov edx, dword [esi]
mov esi, dword [esi + 4]
jb 0x47a994
add edx, ecx
adc esi, eax
seto bl
mov ecx, esi
sar ecx, 0x1f
lea eax, [ecx - 0x80000000]
test bl, bl
cmove ecx, edx
test bl, bl
cmove eax, esi
mov edi, dword [esp + 0x24]
cmp ecx, dword [esp + 0x48]
sbb eax, dword [esp + 0x50]
jge 0x479d1f
mov ecx, dword [esp + 0x54]
mov edx, edi
push dword [esp + 0x28]
call fcn.0047add0
add esp, 4
lea ebx, [edi + edi]
lea edx, [edi + edi]
inc edx
mov dword [esp + 0x28], edi
cmp edx, dword [esp + 0x30]
jb 0x4792b2
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x1c], eax
sub ecx, eax
sar ecx, 5
jmp 0x479714
xor ecx, ecx
dec ecx
mov dword [esp + 0x78], ecx
jmp 0x479095
cmp ecx, 0xffffffff
je 0x4797e6
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0xb0]
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
sub edx, ecx
sar edx, 5
cmp edx, ebx
jbe 0x47a5e3
mov edi, esp
mov edx, ebx
shl edx, 5
mov ecx, dword [ecx + edx + 0x18]
mov dword [ecx + 0xb0], 0xffffffff
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov esi, ecx
sub esi, edx
sar esi, 5
dec esi
cmp esi, ebx
jne 0x47a19f
cmp edx, ecx
je 0x47aa5b
mov esp, edi
add ecx, 0xffffffe0
mov eax, dword [esp + 8]
mov dword [eax], ecx
jmp 0x4797e6
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
jmp 0x479019
xor ebx, ebx
cmp dword [esp + 0x28], 0
jne 0x479d2c
mov eax, dword [esp + 4]
mov dword [esp + 0xd8], eax
mov eax, dword [esp]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0xec], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0xf0], eax
cmp dword [esp + 0x30], ebx
je 0x47a0ae
jbe 0x47a5e3
mov eax, ebx
shl eax, 5
mov ecx, dword [esp]
mov edx, dword [esp + 0x1c]
mov dword [edx + eax + 4], ecx
mov ecx, dword [esp + 4]
mov dword [edx + eax], ecx
mov ecx, dword [esp + 0x18]
mov dword [edx + eax + 0xc], ecx
mov ecx, dword [esp + 0xc]
mov dword [edx + eax + 8], ecx
mov ecx, dword [esp + 0x44]
mov dword [edx + eax + 0x10], ecx
mov ecx, dword [esp + 0x14]
mov dword [edx + eax + 0x14], ecx
mov ecx, dword [ebp + 8]
mov dword [edx + eax + 0x18], ecx
mov esi, dword [esp + 8]
mov ecx, dword [esi]
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
sub ecx, eax
sar ecx, 5
cmp ecx, ebx
jbe 0x47a5e3
mov ecx, ebx
shl ecx, 5
mov eax, dword [eax + ecx + 0x18]
mov dword [eax + 0xb0], ebx
mov eax, dword [esi]
sub eax, dword [edx]
sar eax, 5
cmp eax, ebx
ja 0x4797e2
jmp 0x47a5e3
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov edi, ecx
sub edi, edx
sar edi, 5
cmp ecx, edx
jne 0x479f17
mov esi, ecx
mov edx, ecx
mov ebx, edi
sub esi, ecx
mov eax, dword [esp + 4]
mov dword [esp + 0xd8], eax
mov eax, dword [esp]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0xec], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0xf0], eax
sar esi, 5
cmp esi, ebx
je 0x47a147
jbe 0x47a5e3
mov eax, ebx
shl eax, 5
mov edx, dword [esp]
mov dword [ecx + eax + 4], edx
mov edx, dword [esp + 4]
mov dword [ecx + eax], edx
mov edx, dword [esp + 0x18]
mov dword [ecx + eax + 0xc], edx
mov edx, dword [esp + 0xc]
mov dword [ecx + eax + 8], edx
mov edx, dword [esp + 0x44]
mov dword [ecx + eax + 0x10], edx
mov edx, dword [esp + 0x14]
mov dword [ecx + eax + 0x14], edx
mov edx, dword [ebp + 8]
mov dword [ecx + eax + 0x18], edx
mov esi, dword [esp + 8]
mov ecx, dword [esi]
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
sub ecx, eax
sar ecx, 5
cmp ecx, ebx
jbe 0x47a5e3
mov ecx, ebx
shl ecx, 5
mov eax, dword [eax + ecx + 0x18]
mov dword [eax + 0xb0], ebx
mov eax, dword [esi]
sub eax, dword [edx]
sar eax, 5
cmp eax, ebx
ja 0x4797e6
jmp 0x47a5e3
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 4]
mov dword [esp + 0xd8], eax
mov eax, dword [esp]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0xec], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0xf0], eax
cmp ecx, edi
je 0x479ec2
jbe 0x47a5e3
mov eax, edi
shl eax, 5
mov ecx, dword [esp]
mov edx, dword [esp + 0x1c]
mov dword [edx + eax + 4], ecx
mov ecx, dword [esp + 4]
mov dword [edx + eax], ecx
mov ecx, dword [esp + 0x18]
mov dword [edx + eax + 0xc], ecx
mov ecx, dword [esp + 0xc]
mov dword [edx + eax + 8], ecx
mov ecx, dword [esp + 0x44]
mov dword [edx + eax + 0x10], ecx
mov ecx, dword [esp + 0x14]
mov dword [edx + eax + 0x14], ecx
mov ecx, dword [ebp + 8]
mov dword [edx + eax + 0x18], ecx
mov esi, dword [esp + 8]
mov ecx, dword [esi]
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
sub ecx, eax
sar ecx, 5
cmp ecx, edi
jbe 0x47a5e3
mov ecx, edi
shl ecx, 5
mov eax, dword [eax + ecx + 0x18]
mov dword [eax + 0xb0], edi
mov eax, dword [esi]
sub eax, dword [edx]
sar eax, 5
cmp eax, edi
jbe 0x47a5e3
mov esp, dword [esp + 0x4c]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [esp + 8]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x479c08
mov edi, dword [eax]
mov edx, dword [eax + 4]
mov esi, dword [eax + 0xc]
mov ebx, dword [eax + 8]
mov dword [esp + 8], ebx
mov ebx, dword [eax + 0x14]
mov dword [esp], ebx
cmp dword [esp + 0x78], 1
sete bl
mov bh, byte [esp + 0x5b]
and bh, bl
cmp bh, 1
je 0x479c22
cmp byte [esp + 0x5c], 0
je 0x47983b
cmp dword [esp + 0x44], 1
jne 0x47983b
mov ebx, dword [esp + 0x20]
inc dword [ebx + 0x14]
mov ebx, dword [esp + 0x7c]
cmp dword [esp + 0x60], ebx
je 0x479beb
cmp eax, ecx
je 0x479beb
xor edi, dword [esp + 0x74]
xor edx, dword [esp + 0x70]
or edx, edi
jne 0x47987a
mov edx, dword [esp + 8]
xor edx, dword [esp + 0x68]
xor esi, dword [esp + 0x6c]
or esi, edx
jne 0x47987a
mov edx, dword [esp]
cmp edx, dword [esp + 0x64]
je 0x479d07
cmp eax, ecx
je 0x479c68
mov esi, dword [eax]
mov ebx, dword [eax + 4]
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0x14]
mov byte [esp + 0xb0], 1
mov dword [esp + 8], esi
mov dword [esp + 0xb8], esi
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], 0
mov dword [esp], eax
mov dword [esp + 0xcc], eax
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
mov edi, dword [eax + 8]
cmp edi, 0x494270
jne 0x479cc9
mov esi, dword [esi + 0x1c]
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], esi
jne 0x479c2e
mov esi, dword [eax + 0x18]
mov eax, dword [esi]
mov edi, dword [eax + 4]
cmp edi, 0x476f00
jne 0x47a103
mov ecx, dword [fcn.0048cd00]
cmp ecx, 0x493220
jne 0x47a12f
xor eax, eax
lea edi, [esp + 0x88]
mov dword [edi + 4], eax
mov dword [edi], eax
push edi
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov esi, dword [edi]
mov edi, dword [edi + 4]
cmp esi, 0x7bd05af7
mov eax, edi
sbb eax, 0x863
jge 0x47aa88
mov ecx, 0xf4240
mov eax, esi
mul ecx
imul ecx, edi, 0xf4240
add ecx, edx
push dword [0x52120c]
push dword [0x521208]
push ecx
push eax
call fcn.004b5fc0
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
mov edx, dword [ebp + 0xc]
cmp byte [edx], 0
mov ecx, dword [esp + 0xa8]
mov eax, dword [esp + 0xac]
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
jne 0x4799a1
mov byte [edx], 1
mov esi, dword [esp + 8]
mov edx, ebx
cmp dword [esp], 1
je 0x47a8e9
cmp ecx, esi
sbb eax, edx
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0xc]
jge 0x47a63c
cmp dword [esi + 0x22c], 0
jne 0x47a93b
mov al, 1
mov ecx, dword [esp + 8]
or ecx, ebx
je 0x47a63c
mov edi, dword [esp + 8]
mov dword [esp + 4], edi
mov dword [esp + 0x20], ebx
mov ecx, dword [esp + 0x18]
mov esi, dword [esi + 0x20]
mov byte [esp + 0xd8], al
xor eax, eax
dec eax
mov dword [esp + 0xd9], eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], edi
mov dword [esp + 0xe4], ebx
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xec], edx
mov dword [esp + 0xf0], 0
mov ecx, dword [esp]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov dword [esp + 0xfc], eax
mov eax, dword [esi]
mov edi, dword [eax + 0x10]
cmp edi, 0x493e80
jne 0x479c39
mov eax, dword [esi + 0x100]
mov edx, dword [esp + 4]
xor eax, edx
mov ecx, dword [esi + 0x104]
mov ebx, dword [esp + 0x20]
xor ecx, ebx
or ecx, eax
je 0x479d07
mov dword [esi + 0x100], edx
mov dword [esi + 0x104], ebx
mov eax, dword [esi + 0x120]
cmp eax, 4
jne 0x479d07
mov edi, 0x80000000
dec edi
mov eax, edx
xor edx, edx
inc edx
or edx, 0xfffffffe
xor eax, edx
mov ecx, ebx
xor ecx, edi
or ecx, eax
mov eax, dword [ebp + 0xc]
mov al, byte [eax]
je 0x47a759
test al, al
jne 0x47a612
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 0x18]
mov eax, dword [ebx]
mov edi, dword [eax + 4]
cmp edi, 0x476f00
jne 0x47a6c3
mov ecx, dword [fcn.0048cd00]
cmp ecx, 0x493220
jne 0x47a6f1
xor eax, eax
lea ebx, [esp + 0x88]
mov dword [ebx + 4], eax
mov dword [ebx], eax
push ebx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov edi, dword [ebx]
mov ebx, dword [ebx + 4]
cmp edi, 0x7bd05af7
mov eax, ebx
sbb eax, 0x863
jge 0x47aca1
mov ecx, 0xf4240
mov eax, edi
mul ecx
imul ecx, ebx, 0xf4240
add ecx, edx
push dword [0x52120c]
push dword [0x521208]
push ecx
push eax
call fcn.004b5fc0
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0
mov ecx, dword [esp + 0xa8]
mov ebx, dword [esp + 0xac]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
jne 0x479b64
mov byte [eax], 1
mov dword [esp], ebx
mov dword [esp + 8], ecx
mov edx, dword [esp + 8]
add edx, 0x1dd76000
adc ebx, 0x14
seto al
mov edi, ebx
sar edi, 0x1f
test al, al
cmovne edx, edi
add edi, 0x80000000
test al, al
cmove edi, ebx
mov eax, dword [esp + 4]
cmp edx, eax
mov ecx, eax
cmovb ecx, edx
mov ebx, dword [esp + 0x20]
cmp edi, ebx
cmovge edx, eax
cmove edx, ecx
cmovge edi, ebx
mov esi, dword [esi + 0x130]
mov dword [esp + 0x8c], edi
mov edi, dword [esp]
mov dword [esp + 0x88], edx
mov ecx, dword [esp + 8]
lea ebx, [esp + 0x88]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edi
mov byte [ebx + 0x10], 0
mov eax, dword [esi]
mov edi, dword [eax + 0x10]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
jmp 0x479d05
cmp eax, ecx
sete dl
mov esi, dword [esp + 0x7c]
cmp dword [esp + 0x60], esi
sete dh
cmp dh, dl
jne 0x47987a
jmp 0x479d07
xor edi, edi
xor edx, edx
mov dword [esp + 8], 0
xor esi, esi
mov dword [esp], 0
jmp 0x47980f
mov ebx, dword [esp + 0x20]
dec dword [ebx + 0x14]
jmp 0x479826
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
jmp 0x4799a1
mov ecx, edi
call dword [section..00cfg]
sub esp, 0x2c
movsd xmm0, qword [esp + 0x124]
movsd qword [esp + 0x24], xmm0
movups xmm0, xmmword [esp + 0x104]
movups xmm1, xmmword [esp + 0x114]
jmp 0x479cf3
mov byte [esp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [esp + 0xb8], xmm0
xor eax, eax
mov dword [esp + 0xcc], eax
mov dword [esp], 0
mov dword [esp + 0xc8], eax
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
mov edi, dword [eax + 8]
cmp edi, 0x494270
jne 0x479cc9
mov esi, dword [esi + 0x1c]
xor eax, eax
inc eax
add eax, 0xfffffffe
mov dword [esp + 4], eax
mov eax, 0x80000000
dec eax
mov dword [esp + 0x20], eax
xor ecx, ecx
xor edx, edx
xor edi, edi
xor ebx, ebx
xor eax, eax
jmp 0x4799ee
mov ecx, edi
call dword [section..00cfg]
sub esp, 0x2c
movsd xmm0, qword [esp + 0xfc]
movsd qword [esp + 0x24], xmm0
movups xmm0, xmmword [esp + 0xdc]
movups xmm1, xmmword [esp + 0xec]
movups xmmword [esp + 0x14], xmm1
movups xmmword [esp + 4], xmm0
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
mov ecx, esi
call edi
mov ecx, dword [esp + 0x100]
xor ecx, ebp
call fcn.00496ce3
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x30
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x28]
jmp 0x479714
mov eax, dword [esp + 4]
add eax, dword [esp + 0xc]
mov ecx, dword [esp]
adc ecx, dword [esp + 0x18]
seto bl
mov edx, ecx
sar edx, 0x1f
lea esi, [edx - 0x80000000]
test bl, bl
cmove edx, eax
test bl, bl
cmove esi, ecx
mov eax, 0x80000000
dec eax
xor ecx, ecx
inc ecx
lea edi, [ecx - 2]
mov ecx, dword [esp + 0xc]
add ecx, edi
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x18]
adc ecx, eax
mov dword [esp + 0x1c], ecx
mov ebx, dword [esp + 4]
add edi, ebx
mov ecx, dword [esp]
adc eax, ecx
cmp edi, 0xfffffffe
sbb eax, 0xffffffff
setb al
mov edi, ebx
xor edi, dword [esp + 0xc]
mov ebx, ecx
mov ecx, dword [esp + 0x18]
xor ebx, ecx
or ebx, edi
sete ah
cmp dword [esp + 0x30], 0xfffffffe
sbb dword [esp + 0x1c], 0xffffffff
cmovae esi, ecx
setb cl
cmovae edx, dword [esp + 0xc]
cmp dword [esp + 0x14], 0
cmovne edx, dword [esp + 4]
mov dword [esp + 0x24], edx
cmovne esi, dword [esp]
mov dword [esp + 0x2c], esi
setne dl
or dl, cl
or ah, al
or ah, dl
mov byte [esp + 0x40], ah
mov eax, dword [esp + 0x28]
lea ebx, [eax - 1]
mov dword [esp + 0x3c], ebx
shr ebx, 1
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov dword [esp + 0x38], ecx
mov eax, ecx
sub eax, edx
sar eax, 5
mov dword [esp + 0x30], eax
cmp eax, ebx
jbe 0x47a5e3
mov eax, ebx
shl eax, 5
lea edi, [edx + eax]
mov dword [esp + 0x1c], edx
cmp dword [edx + eax + 0x14], 0
jne 0x47a651
mov esi, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov edx, ecx
xor eax, eax
inc eax
add edx, eax
mov dword [esp + 0x34], esi
mov eax, esi
mov esi, 0x80000000
adc eax, esi
cmp edx, 2
sbb eax, 0
mov edx, dword [edi]
mov edi, dword [edi + 4]
jb 0x47ab19
add edx, ecx
adc edi, dword [esp + 0x34]
seto al
mov ecx, edi
sar ecx, 0x1f
lea esi, [ecx - 0x80000000]
test al, al
cmove ecx, edx
test al, al
cmove esi, edi
cmp byte [esp + 0x40], 0
je 0x47ab9f
cmp dword [esp + 0x24], ecx
mov eax, dword [esp + 0x2c]
sbb eax, esi
jge 0x47a126
mov ecx, dword [esp + 0x54]
mov edx, ebx
push dword [esp + 0x28]
call fcn.0047add0
add esp, 4
mov dword [esp + 0x28], ebx
cmp dword [esp + 0x3c], 1
ja 0x479dd2
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov dword [esp + 0x38], ecx
mov eax, ecx
mov dword [esp + 0x1c], edx
sub eax, edx
sar eax, 5
mov dword [esp + 0x30], eax
jmp 0x479546
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x38]
cmp ecx, dword [eax + 0x10]
jae 0x47a6dc
test ecx, ecx
je 0x47aa72
mov eax, dword [esp + 4]
mov dword [ecx], eax
mov eax, dword [esp]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xc]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x18]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [ecx + 0x10], eax
mov eax, dword [esp + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x18], eax
add ecx, 0x20
mov eax, dword [esp + 8]
mov dword [eax], ecx
jmp 0x4797ab
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0xc]
mov eax, dword [esp]
adc eax, dword [esp + 0x18]
seto bl
mov edx, eax
sar edx, 0x1f
lea esi, [edx - 0x80000000]
test bl, bl
cmove edx, ecx
test bl, bl
cmove esi, eax
mov eax, 0x80000000
lea ecx, [eax - 1]
xor eax, eax
inc eax
mov dword [esp + 0x28], edi
lea edi, [eax - 2]
mov eax, dword [esp + 0xc]
add eax, edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
adc eax, ecx
mov ebx, dword [esp + 4]
add edi, ebx
adc ecx, dword [esp]
cmp edi, 0xfffffffe
sbb ecx, 0xffffffff
setb byte [esp + 0x1c]
mov edi, ebx
xor edi, dword [esp + 0xc]
mov ebx, dword [esp]
mov ecx, dword [esp + 0x18]
xor ebx, ecx
or ebx, edi
mov edi, dword [esp + 0x28]
sete bl
cmp dword [esp + 0x30], 0xfffffffe
sbb eax, 0xffffffff
cmovae esi, ecx
setb al
cmovae edx, dword [esp + 0xc]
cmp dword [esp + 0x14], 0
cmovne edx, dword [esp + 4]
mov dword [esp + 0x2c], edx
cmovne esi, dword [esp]
mov dword [esp + 0x38], esi
setne ch
or ch, al
or bl, byte [esp + 0x1c]
or bl, ch
mov byte [esp + 0x40], bl
lea ebx, [edi - 1]
mov dword [esp + 0x34], ebx
shr ebx, 1
mov eax, dword [esp + 8]
mov edx, dword [eax]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x30], edx
sub edx, ecx
sar edx, 5
cmp edx, ebx
jbe 0x47a5e3
mov esi, ebx
shl esi, 5
lea edx, [ecx + esi]
cmp dword [ecx + esi + 0x14], 0
jne 0x47a6b5
mov dword [esp + 0x28], edi
mov edi, dword [edx + 0xc]
mov esi, dword [edx + 8]
mov dword [esp + 0x1c], esi
xor eax, eax
inc eax
add esi, eax
mov dword [esp + 0x24], edi
mov eax, edi
mov edi, 0x80000000
adc eax, edi
cmp esi, 2
sbb eax, 0
mov eax, dword [edx]
mov edx, dword [edx + 4]
jb 0x47ab59
add eax, dword [esp + 0x1c]
mov dword [esp + 0x4c], eax
adc edx, dword [esp + 0x24]
seto al
mov edi, edx
sar edi, 0x1f
lea esi, [edi - 0x80000000]
test al, al
cmove edi, dword [esp + 0x4c]
mov dword [esp + 0x1c], edi
test al, al
cmove esi, edx
mov edi, dword [esp + 0x28]
cmp byte [esp + 0x40], 0
mov edx, dword [esp + 0x30]
je 0x47aba2
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x2c], eax
mov eax, dword [esp + 0x38]
sbb eax, esi
jge 0x47a198
mov ecx, dword [esp + 0x54]
mov edx, ebx
push edi
call fcn.0047add0
add esp, 4
mov edi, ebx
cmp dword [esp + 0x34], 1
ja 0x479fc4
mov eax, dword [esp + 8]
mov esi, dword [eax]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, esi
jmp 0x47963c
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x38]
cmp ecx, dword [eax + 0x10]
jae 0x47a713
test ecx, ecx
je 0x47aa72
mov eax, dword [esp + 4]
mov dword [ecx], eax
mov eax, dword [esp]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xc]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x18]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [ecx + 0x10], eax
mov eax, dword [esp + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x18], eax
add ecx, 0x20
mov eax, dword [esp + 8]
mov dword [eax], ecx
jmp 0x4795df
mov ecx, edi
call dword [section..00cfg]
lea eax, [esp + 0xa8]
mov ecx, esi
push eax
call edi
jmp 0x479982
mov edi, dword [esi]
mov ecx, dword [esi + 4]
jmp 0x4791cc
mov ebx, dword [esp + 0x28]
jmp 0x479546
call dword [section..00cfg]
lea eax, [esp + 0xa8]
push eax
call ecx
add esp, 4
jmp 0x479982
mov eax, dword [esp + 0x20]
cmp edx, dword [eax + 0x10]
jae 0x47a728
test edx, edx
je 0x47aa72
mov eax, dword [esp + 4]
mov dword [edx], eax
mov eax, dword [esp]
mov dword [edx + 4], eax
mov eax, dword [esp + 0xc]
mov dword [edx + 8], eax
mov eax, dword [esp + 0x18]
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [edx + 0x10], eax
mov eax, dword [esp + 0x14]
mov dword [edx + 0x14], eax
mov eax, dword [ebp + 8]
mov dword [edx + 0x18], eax
add edx, 0x20
mov eax, dword [esp + 8]
mov dword [eax], edx
jmp 0x4796d4
mov esi, edx
jmp 0x47963a
cmp ecx, edx
je 0x47a5e3
shl esi, 5
mov ecx, dword [edx + esi + 0x18]
mov dword [ecx + 0xb0], 0xffffffff
mov eax, dword [esp + 8]
mov esi, dword [eax]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
sub esi, ecx
je 0x47a5e3
mov dword [esp + 0x34], edi
sar esi, 5
dec esi
mov edx, esi
shl edx, 5
mov eax, dword [ecx + edx]
mov dword [esp + 0x18], eax
mov eax, dword [ecx + edx + 4]
mov dword [esp + 0x28], eax
mov eax, dword [ecx + edx + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ecx + edx + 8]
mov dword [esp + 4], eax
mov eax, dword [ecx + edx + 0x10]
mov dword [esp + 0x54], eax
mov eax, dword [ecx + edx + 0x14]
mov dword [esp + 0x4c], eax
mov eax, dword [ecx + edx + 0x1c]
mov dword [esp + 0x3c], eax
mov eax, dword [ecx + edx + 0x18]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x20]
add eax, 4
mov dword [esp + 0x2c], eax
lea edx, [ebx + ebx]
inc edx
cmp edx, esi
jae 0x47a374
mov dword [esp + 0x1c], ebx
lea edi, [ebx + ebx]
mov dword [esp + 0x40], esi
add edi, 2
cmp edi, esi
jae 0x47a33c
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
sub ecx, esi
sar ecx, 5
cmp ecx, edi
jbe 0x47a5e3
cmp ecx, edx
jbe 0x47a5e3
mov dword [esp + 0x30], edx
shl edx, 5
lea ecx, [esi + edx]
cmp dword [esi + edx + 0x14], 0
mov dword [esp + 0x14], edi
jne 0x47a363
mov edi, dword [ecx + 0xc]
mov ebx, dword [ecx + 8]
mov edx, ebx
xor eax, eax
inc eax
add edx, eax
mov dword [esp], edi
mov eax, 0x80000000
adc edi, eax
cmp edx, 2
sbb edi, 0
mov edi, dword [ecx]
mov ecx, dword [ecx + 4]
jb 0x47aba5
add edi, ebx
adc ecx, dword [esp]
seto dl
mov ebx, ecx
sar ebx, 0x1f
lea eax, [ebx - 0x80000000]
test dl, dl
cmove ebx, edi
test dl, dl
cmove eax, ecx
mov edi, dword [esp + 0x14]
mov dword [esp + 0x24], ebx
mov dword [esp], eax
mov ecx, edi
shl ecx, 5
add esi, ecx
cmp dword [esi + 0x14], 0
jne 0x47a36d
mov ebx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov edx, ecx
xor eax, eax
inc eax
add edx, eax
mov edi, ebx
mov eax, 0x80000000
adc edi, eax
cmp edx, 2
sbb edi, 0
mov edx, dword [esi]
mov esi, dword [esi + 4]
jb 0x47abea
add edx, ecx
adc esi, ebx
seto al
mov ecx, esi
sar ecx, 0x1f
lea ebx, [ecx - 0x80000000]
test al, al
cmove ecx, edx
test al, al
cmove ebx, esi
mov edi, dword [esp + 0x14]
cmp ecx, dword [esp + 0x24]
sbb ebx, dword [esp]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x30]
jl 0x47a33a
mov edi, eax
mov edx, edi
mov ebx, edx
mov ecx, dword [esp + 0x2c]
push dword [esp + 0x1c]
call fcn.0047add0
add esp, 4
lea edi, [ebx + ebx]
lea edx, [ebx + ebx]
inc edx
mov dword [esp + 0x1c], ebx
cmp edx, esi
jb 0x47a23a
jmp 0x47a374
mov ebx, dword [ecx]
mov eax, dword [ecx + 4]
jmp 0x47a2c8
mov ecx, dword [esi]
mov ebx, dword [esi + 4]
jmp 0x47a327
test ebx, ebx
je 0x47a73d
mov eax, dword [esp + 0x18]
add eax, dword [esp + 4]
mov ecx, dword [esp + 0x28]
adc ecx, dword [esp + 0xc]
seto byte [esp]
mov edx, ecx
sar edx, 0x1f
lea esi, [edx - 0x80000000]
cmp byte [esp], 0
cmove edx, eax
cmp byte [esp], 0
cmove esi, ecx
mov eax, 0x80000000
dec eax
xor ecx, ecx
inc ecx
lea edi, [ecx - 2]
mov ecx, dword [esp + 4]
add ecx, edi
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0xc]
adc ecx, eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x18]
add edi, ecx
mov dword [esp], ebx
mov ebx, dword [esp + 0x28]
adc eax, ebx
cmp edi, 0xfffffffe
sbb eax, 0xffffffff
setb byte [esp + 0x14]
mov edi, ecx
xor edi, dword [esp + 4]
mov eax, ebx
mov ecx, dword [esp + 0xc]
xor eax, ecx
or eax, edi
sete ah
cmp dword [esp + 0x30], 0xfffffffe
sbb dword [esp + 0x1c], 0xffffffff
cmovae esi, ecx
setb al
cmovae edx, dword [esp + 4]
cmp dword [esp + 0x4c], 0
cmovne edx, dword [esp + 0x18]
mov dword [esp + 0x1c], edx
cmovne esi, ebx
mov ebx, dword [esp]
mov dword [esp + 0x30], esi
setne cl
or cl, al
or ah, byte [esp + 0x14]
or ah, cl
mov byte [esp + 0x24], ah
lea edi, [ebx - 1]
mov dword [esp + 0x40], edi
shr edi, 1
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
sub ecx, eax
sar ecx, 5
cmp ecx, edi
jbe 0x47a5e3
mov ecx, edi
shl ecx, 5
lea edx, [eax + ecx]
cmp dword [eax + ecx + 0x14], 0
jne 0x47a709
mov dword [esp], ebx
mov dword [esp + 0x14], edi
mov esi, dword [edx + 0xc]
mov ecx, dword [edx + 8]
mov edi, ecx
xor eax, eax
inc eax
add edi, eax
mov ebx, esi
mov eax, esi
mov esi, 0x80000000
adc eax, esi
cmp edi, 2
sbb eax, 0
mov edi, dword [edx]
mov edx, dword [edx + 4]
jb 0x47ac40
add edi, ecx
adc edx, ebx
seto al
mov ecx, edx
sar ecx, 0x1f
lea esi, [ecx - 0x80000000]
test al, al
cmove ecx, edi
test al, al
cmove esi, edx
mov edi, dword [esp + 0x14]
mov ebx, dword [esp]
cmp byte [esp + 0x24], 0
je 0x47ac81
cmp dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x30]
sbb eax, esi
jge 0x47a4ef
mov ecx, dword [esp + 0x2c]
mov edx, edi
push ebx
call fcn.0047add0
add esp, 4
mov ebx, edi
cmp dword [esp + 0x40], 1
ja 0x47a432
jmp 0x47a4f1
mov edi, ebx
mov eax, dword [esp + 0x18]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 4]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xec], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0xf0], eax
mov esi, dword [esp + 0x3c]
mov dword [esp + 0xf4], esi
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx]
mov edx, eax
sub edx, ecx
sar edx, 5
mov ebx, edi
cmp edx, edi
je 0x47a65b
mov edi, dword [esp + 0x34]
jbe 0x47a5e3
mov eax, ebx
shl eax, 5
mov edx, dword [esp + 0x28]
mov dword [ecx + eax + 4], edx
mov edx, dword [esp + 0x18]
mov dword [ecx + eax], edx
mov edx, dword [esp + 0xc]
mov dword [ecx + eax + 0xc], edx
mov edx, dword [esp + 4]
mov dword [ecx + eax + 8], edx
mov edx, dword [esp + 0x54]
mov dword [ecx + eax + 0x10], edx
mov edx, dword [esp + 0x4c]
mov dword [ecx + eax + 0x14], edx
mov dword [ecx + eax + 0x1c], esi
mov edx, dword [esp + 0x38]
mov dword [ecx + eax + 0x18], edx
mov esi, dword [esp + 8]
mov ecx, dword [esi]
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
sub ecx, eax
sar ecx, 5
cmp ecx, ebx
jbe 0x47a5e3
mov ecx, ebx
shl ecx, 5
mov eax, dword [eax + ecx + 0x18]
mov dword [eax + 0xb0], ebx
mov ecx, dword [esi]
mov edx, dword [edx]
mov eax, ecx
sub eax, edx
sar eax, 5
cmp eax, ebx
ja 0x4794f4
push str.vector___index_out_of_bounds
push str.__n___size__
push 0x587
push str....._buildtools_third_partylibc_trunkinclude_vector
push str._s:_d:_assertion__s_failed:__s
call fcn.004be7c0
mov edi, edx
jmp 0x4793ca
mov ecx, dword [esi]
mov eax, dword [esi + 4]
jmp 0x47943b
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
mov ebx, dword [eax + 0xc]
jmp 0x479b64
mov eax, dword [ecx]
mov dword [esp + 0x3c], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0x34], eax
jmp 0x47935c
mov edi, dword [ebx]
mov esi, dword [ebx + 4]
jmp 0x4793b0
mov esi, dword [esi + 0x20]
mov eax, dword [esi]
mov edi, dword [eax + 0xc]
mov ecx, edi
call dword [section..00cfg]
jmp 0x479d03
mov ecx, dword [edi]
mov esi, dword [edi + 4]
jmp 0x479e62
mov ecx, dword [esp + 0x20]
cmp eax, dword [ecx + 0x10]
mov edi, dword [esp + 0x34]
jae 0x47a744
test eax, eax
je 0x47aa72
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], esi
add eax, 0x20
mov ecx, dword [esp + 8]
mov dword [ecx], eax
jmp 0x47a5ac
mov eax, dword [edx]
mov dword [esp + 0x1c], eax
mov esi, dword [edx + 4]
jmp 0x47a05c
mov ecx, edi
call dword [section..00cfg]
lea eax, [esp + 0xa8]
mov ecx, ebx
push eax
call edi
jmp 0x479b45
lea edx, [esp + 0xd8]
mov ecx, dword [esp + 0x10]
call fcn.0040dd70
jmp 0x4797ab
call dword [section..00cfg]
lea eax, [esp + 0xa8]
push eax
call ecx
add esp, 4
jmp 0x479b45
mov ecx, dword [edx]
mov esi, dword [edx + 4]
jmp 0x47a4ba
lea edx, [esp + 0xd8]
mov ecx, dword [esp + 0x10]
call fcn.0040dd70
jmp 0x4795df
lea edx, [esp + 0xd8]
mov ecx, dword [esp + 0x10]
call fcn.0040dd70
jmp 0x4796d4
xor edi, edi
jmp 0x47a4f1
lea edx, [esp + 0xd8]
mov ecx, dword [esp + 0x10]
call fcn.0040dd70
jmp 0x47a5ac
mov esi, dword [esi + 0x130]
mov dword [esp + 0x8c], edi
mov dword [esp + 0x88], edx
test al, al
jne 0x47ad2f
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 0x18]
mov eax, dword [ebx]
mov edi, dword [eax + 4]
cmp edi, 0x476f00
jne 0x47a825
mov ecx, dword [fcn.0048cd00]
cmp ecx, 0x493220
jne 0x47a83b
xor eax, eax
lea ebx, [esp + 0xa8]
mov dword [ebx + 4], eax
mov dword [ebx], eax
push ebx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov edi, dword [ebx]
mov ebx, dword [ebx + 4]
cmp edi, 0x7bd05af7
mov eax, ebx
sbb eax, 0x863
jge 0x47ad3d
mov ecx, 0xf4240
mov eax, edi
mul ecx
imul ecx, ebx, 0xf4240
add ecx, edx
push dword [0x52120c]
push dword [0x521208]
push ecx
push eax
call fcn.004b5fc0
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edx
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0
mov ecx, dword [esp + 0xa0]
mov edi, dword [esp + 0xa4]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edi
jne 0x479bc5
mov byte [eax], 1
jmp 0x479bc5
mov ecx, edi
call dword [section..00cfg]
lea eax, [esp + 0xa0]
mov ecx, ebx
push eax
call edi
jmp 0x47a7fd
call dword [section..00cfg]
lea eax, [esp + 0xa0]
push eax
call ecx
add esp, 4
jmp 0x47a7fd
call fcn.004a8580
mov eax, dword [esp + 4]
xor ecx, ecx
inc ecx
add eax, ecx
mov ecx, dword [esp]
mov edx, 0x80000000
adc ecx, edx
mov dword [esp + 0x24], 0
xor edx, edx
inc edx
cmp edx, eax
sbb dword [esp + 0x24], ecx
mov eax, edi
mov dword [esp + 0x24], ebx
jb 0x479173
mov eax, dword [esp + 4]
mov edi, dword [esp + 0xc]
xor eax, edi
mov ecx, dword [esp]
mov edx, dword [esp + 0x18]
xor ecx, edx
or ecx, eax
mov eax, edi
mov dword [esp + 0x24], edx
je 0x479173
int3
mov eax, edx
xor ebx, ebx
inc ebx
add eax, ebx
mov dword [esp + 0x40], eax
mov ebx, esi
mov eax, 0x80000000
adc ebx, eax
mov dword [esp + 0x34], 0
xor eax, eax
inc eax
cmp eax, dword [esp + 0x40]
sbb dword [esp + 0x34], ebx
jb 0x4791c8
xor edx, edi
xor esi, ecx
or esi, edx
mov eax, dword [esp + 0x2c]
je 0x4791cc
int3
mov edx, dword [esp + 0x18]
xor esi, esi
inc esi
add edx, esi
mov esi, dword [esp + 0x10]
mov edi, 0x80000000
adc esi, edi
cmp edx, 2
sbb esi, 0
jae 0x47a95b
mov edx, dword [esp + 8]
xor edx, dword [esp + 0x18]
mov esi, ebx
xor esi, dword [esp + 0x10]
or esi, edx
je 0x47adcb
mov edx, dword [esp + 0x10]
sar edx, 0x1f
mov esi, edx
xor edi, edi
inc edi
add esi, edi
mov edi, 0x80000000
adc edx, edi
add esi, 0xffffffff
adc edx, 0xffffffff
jmp 0x4799b1
xor eax, eax
inc eax
add eax, 0xfffffffe
mov dword [esp + 4], eax
mov eax, 0x80000000
dec eax
mov dword [esp + 0x20], eax
mov dword [esp], 0
jmp 0x479cba
mov edx, dword [esp + 8]
sub edx, dword [esp + 0x18]
mov dword [esp + 4], edx
mov edi, ebx
sbb edi, dword [esp + 0x10]
seto byte [esp + 0x20]
mov esi, edi
sar esi, 0x1f
lea edx, [esi - 0x80000000]
cmp byte [esp + 0x20], 0
cmove esi, dword [esp + 4]
cmp byte [esp + 0x20], 0
cmove edx, edi
jmp 0x4799b1
mov edi, edx
xor ebx, ebx
inc ebx
add edi, ebx
mov dword [esp + 0x2c], edi
mov ebx, esi
mov edi, 0x80000000
adc ebx, edi
mov dword [esp + 0x34], 0
xor edi, edi
inc edi
cmp edi, dword [esp + 0x2c]
sbb dword [esp + 0x34], ebx
jb 0x479437
xor edx, ecx
xor esi, eax
or esi, edx
mov edi, dword [esp + 0x24]
je 0x47943b
int3
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x34], esi
mov edi, edx
xor esi, esi
inc esi
add edi, esi
mov ebx, ecx
mov eax, 0x80000000
adc ebx, eax
xor eax, eax
cmp esi, edi
sbb eax, ebx
jb 0x479358
xor edx, dword [esp + 0x3c]
xor ecx, dword [esp + 0x34]
or ecx, edx
mov ebx, dword [esp + 0x2c]
je 0x47935c
int3
mov eax, edx
xor ecx, ecx
inc ecx
add eax, ecx
mov dword [esp + 0x84], eax
mov ecx, ebx
mov eax, 0x80000000
adc ecx, eax
mov dword [esp + 0x80], 0
xor eax, eax
inc eax
cmp eax, dword [esp + 0x84]
sbb dword [esp + 0x80], ecx
jb 0x4793b0
xor edx, edi
xor ebx, esi
or ebx, edx
mov eax, dword [esp + 0x3c]
je 0x4793b4
int3
push str.vector::pop_back_called_on_an_empty_vector
push str._empty__
push 0x623
jmp 0x47a5f2
int3
push str.null_pointer_given_to_construct_at
push str.__location___nullptr
push 0x23
push str....._buildtools_third_partylibc_trunkinclude__memoryconstruct_at.h
jmp 0x47a5f7
mov eax, dword [0x521208]
mov dword [esp + 0x20], eax
mov ecx, dword [0x52120c]
mov dword [esp + 4], ecx
push ecx
push eax
push edi
push esi
call fcn.004b5fc0
mov dword [esp + 0x14], eax
mov dword [esp + 0x60], edx
mul dword [esp + 0x20]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x14]
imul ecx, dword [esp + 4]
add edx, ecx
mov eax, dword [esp + 0x60]
imul ecx, eax, 0xf4240
mov dword [esp + 0x5c], ecx
imul eax, dword [esp + 0x20]
add eax, edx
sub esi, dword [esp + 0x44]
sbb edi, eax
mov ecx, 0xf4240
mov eax, dword [esp + 0x14]
mul ecx
mov dword [esp + 0x14], eax
add edx, dword [esp + 0x5c]
mov dword [esp + 0x5c], edx
mov eax, esi
mul ecx
imul ecx, edi, 0xf4240
add edx, ecx
push dword [esp + 4]
push dword [esp + 0x24]
push edx
push eax
call fcn.004b5fc0
add eax, dword [esp + 0x14]
adc edx, dword [esp + 0x5c]
jmp 0x479974
mov esi, edx
xor eax, eax
inc eax
add esi, eax
mov dword [esp + 0x48], esi
mov eax, edi
mov esi, 0x80000000
adc eax, esi
mov dword [esp + 0x50], 0
xor esi, esi
inc esi
cmp esi, dword [esp + 0x48]
sbb dword [esp + 0x50], eax
jb 0x47ac2a
xor edx, ecx
mov esi, dword [esp + 0x34]
xor edi, esi
or edi, edx
je 0x479e62
int3
mov dword [esp + 0x4c], eax
xor esi, esi
inc esi
add eax, esi
mov esi, edx
mov edi, 0x80000000
adc esi, edi
mov dword [esp + 0x3c], 0
xor edi, edi
inc edi
cmp edi, eax
sbb dword [esp + 0x3c], esi
jb 0x47ac33
mov eax, dword [esp + 0x4c]
xor eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x24]
xor edx, esi
or edx, eax
mov edi, dword [esp + 0x28]
je 0x47a05c
int3
int3
int3
mov dword [esp + 0x24], ebx
mov edx, edi
xor eax, eax
inc eax
add edx, eax
mov eax, ecx
mov ebx, 0x80000000
adc eax, ebx
mov dword [esp + 0x48], 0
xor ebx, ebx
inc ebx
cmp ebx, edx
sbb dword [esp + 0x48], eax
jb 0x47ac84
mov ebx, dword [esp + 0x24]
xor edi, ebx
mov eax, dword [esp]
xor ecx, eax
or ecx, edi
mov edi, dword [esp + 0x14]
je 0x47a2c8
int3
mov eax, edx
xor edi, edi
inc edi
add eax, edi
mov dword [esp + 0x48], eax
mov edi, esi
mov eax, 0x80000000
adc edi, eax
mov dword [esp + 0x50], 0
xor eax, eax
inc eax
cmp eax, dword [esp + 0x48]
sbb dword [esp + 0x50], edi
jb 0x47a323
xor edx, ecx
xor esi, ebx
or esi, edx
mov edi, dword [esp + 0x14]
je 0x47a327
int3
mov esi, dword [esp + 0x34]
jmp 0x479e62
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
jmp 0x47a05c
mov dword [esp + 0x48], ebx
mov ebx, edi
xor eax, eax
inc eax
add ebx, eax
mov eax, edx
mov esi, 0x80000000
adc eax, esi
mov dword [esp + 0x50], 0
xor esi, esi
inc esi
cmp esi, ebx
sbb dword [esp + 0x50], eax
jb 0x47ac94
xor edi, ecx
mov esi, dword [esp + 0x48]
xor edx, esi
or edx, edi
mov edi, dword [esp + 0x14]
mov ebx, dword [esp]
je 0x47a4ba
int3
int3
mov edi, dword [esp + 0x14]
mov eax, dword [esp]
mov ebx, dword [esp + 0x24]
jmp 0x47a2c8
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x48]
jmp 0x47a4b7
mov eax, dword [0x521208]
mov dword [esp + 8], eax
mov ecx, dword [0x52120c]
mov dword [esp], ecx
push ecx
push eax
push ebx
push edi
call fcn.004b5fc0
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mul dword [esp + 8]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x10]
imul ecx, dword [esp]
add edx, ecx
mov eax, dword [esp + 0x14]
imul ecx, eax, 0xf4240
mov dword [esp + 0xc], ecx
imul eax, dword [esp + 8]
add eax, edx
sub edi, dword [esp + 0x18]
sbb ebx, eax
mov ecx, 0xf4240
mov eax, dword [esp + 0x10]
mul ecx
mov dword [esp + 0x10], eax
add edx, dword [esp + 0xc]
mov dword [esp + 0xc], edx
mov eax, edi
mul ecx
imul ecx, ebx, 0xf4240
add edx, ecx
push dword [esp]
push dword [esp + 0xc]
push edx
push eax
call fcn.004b5fc0
add eax, dword [esp + 0x10]
adc edx, dword [esp + 0xc]
jmp 0x479b37
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
mov edi, dword [eax + 0xc]
jmp 0x479bc5
mov eax, dword [0x521208]
mov dword [esp + 8], eax
mov ecx, dword [0x52120c]
mov dword [esp], ecx
push ecx
push eax
push ebx
push edi
call fcn.004b5fc0
mov dword [esp + 0x20], eax
mov dword [esp + 0xc], edx
mul dword [esp + 8]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x20]
imul ecx, dword [esp]
add edx, ecx
mov eax, dword [esp + 0xc]
imul ecx, eax, 0xf4240
mov dword [esp + 4], ecx
imul eax, dword [esp + 8]
add eax, edx
sub edi, dword [esp + 0x10]
sbb ebx, eax
mov ecx, 0xf4240
mov eax, dword [esp + 0x20]
mul ecx
mov dword [esp + 0x20], eax
add edx, dword [esp + 4]
mov dword [esp + 4], edx
mov eax, edi
mul ecx
imul ecx, ebx, 0xf4240
add edx, ecx
push dword [esp]
push dword [esp + 0xc]
push edx
push eax
call fcn.004b5fc0
add eax, dword [esp + 0x20]
adc edx, dword [esp + 4]
jmp 0x47a7ef
int3