Function at 0x478220
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x40
mov esi, edx
mov edi, ecx
mov eax, dword [0x5a8564]
xor eax, ebp
mov dword [esp + 0x38], eax
cmp ecx, 8
ja 0x478364
lea eax, [edi - 1]
test edi, eax
sete al
test edi, edi
setne cl
test cl, al
je 0x4785fa
mov eax, dword [0x5b5340]
test eax, eax
je 0x47861b
cmp esi, 1
mov edi, esi
adc edi, 0
add edi, dword [eax + 8]
cmp edi, esi
jb 0x4785f0
movzx ebx, byte [eax + 2]
mov edx, 0x20
mov ecx, 0x20
test edi, edi
je 0x478291
bsr ecx, edi
xor ecx, 0x1f
sub edx, ecx
mov esi, 0x568f8e
sub esi, ecx
movzx ecx, byte [esi]
mov esi, edi
shr esi, cl
and esi, 7
mov ecx, dword [edx*4 + 0x568f90]
and ecx, edi
lea edx, [esi + edx*8]
cmp ecx, 1
sbb edx, 0xffffffff
movzx ecx, word [edx + edx + 0x56a1f8]
test bl, bl
jne 0x4782d8
cmp edi, 0x41
setae dh
cmp cx, 0x76
setb dl
and dl, dh
movzx edx, dl
or edx, ecx
mov ecx, edx
mov byte [esp + 0x1f], 0
mov dword [esp], eax
cmp byte [eax + 3], 0
movzx esi, cx
je 0x47862f
mov ecx, 0x5aa9ac
call fcn.00404ea0
mov ebx, dword [eax]
cmp ebx, 1
jbe 0x47864c
cmp ebx, 2
jb 0x478631
add dword [ebx + esi*8 + 0x58], 1
adc dword [ebx + esi*8 + 0x5c], 0
add dword [ebx + 8], 1
adc dword [ebx + 0xc], 0
cmp word [0x5a74e8], si
jb 0x478661
mov edx, dword [ebx + esi*8 + 0x4c0]
test edx, edx
je 0x478692
add dword [ebx + 0x10], 1
adc dword [ebx + 0x14], 0
movzx edi, word [ebx + esi*8 + 0x4c6]
mov eax, dword [edx]
test eax, eax
je 0x4783cd
mov ecx, eax
bswap ecx
test ecx, 0x1fc000
je 0x4788a6
prefetcht0 byte [ecx]
jmp 0x4783cf
mov eax, dword [0x5b67c0]
mov dword [esp], eax
test eax, eax
je 0x478604
lea edx, [edi - 1]
test edi, edx
sete al
test edi, edi
setne cl
test cl, al
je 0x478611
cmp edi, 0x100001
jae 0x478625
mov dword [esp + 0x10], edx
cmp esi, 1
mov ebx, esi
adc ebx, 0
mov eax, dword [esp]
mov eax, dword [eax + 8]
add ebx, eax
cmp edi, 0x4000
jbe 0x4783b8
mov edx, esi
jmp 0x478457
mov edx, edi
cmp ebx, edi
jb 0x478446
dec ebx
je 0x478438
bsr ecx, ebx
xor ecx, 0x1f
jmp 0x47843d
xor ecx, ecx
dec byte [ebx + esi*8 + 0x4c4]
mov dword [ebx + esi*8 + 0x4c0], ecx
sub dword [ebx], edi
mov eax, dword [esp]
sub edi, dword [eax + 8]
movdqu xmm0, xmmword [ebx + 0x4a0]
movd xmm1, edi
movq xmm1, xmm1
movaps xmm2, xmmword [0x561370]
shufps xmm2, xmm1, 0x84
paddq xmm2, xmm0
movdqu xmmword [ebx + 0x4a0], xmm2
mov eax, dword [esp]
mov esi, dword [eax + 0xc]
add esi, edx
cmp byte [eax + 6], 0
je 0x4785db
test edx, 0xfff
je 0x478883
add edx, 0xfffffffc
mov dword [edx], 1
jmp 0x4785db
mov ecx, 0x20
neg cl
mov edx, 1
shl edx, cl
sub edx, eax
cmp edx, esi
jb 0x47891d
cmp edx, 1
adc eax, edx
mov ebx, eax
cmp edi, 0x4001
mov eax, 0x4000
cmovae eax, edi
mov dword [esp + 4], eax
cmp ebx, edx
jb 0x4785f0
mov eax, dword [esp]
movzx eax, byte [eax + 2]
mov edx, 0x20
mov ecx, 0x20
test ebx, ebx
je 0x47848c
bsr ecx, ebx
xor ecx, 0x1f
sub edx, ecx
mov esi, 0x568f8e
sub esi, ecx
movzx ecx, byte [esi]
mov esi, ebx
shr esi, cl
and esi, 7
mov ecx, dword [edx*4 + 0x568f90]
and ecx, ebx
lea edx, [esi + edx*8]
cmp ecx, 1
sbb edx, 0xffffffff
movzx esi, word [edx + edx + 0x56a1f8]
test al, al
jne 0x4784d3
cmp ebx, 0x41
setae al
cmp si, 0x76
setb cl
and cl, al
movzx eax, cl
or eax, esi
mov esi, eax
mov byte [esp + 0x1f], 0
mov eax, dword [esp]
cmp byte [eax + 3], 0
je 0x47868c
mov ecx, 0x5aa9ac
call fcn.00404ea0
mov edi, dword [eax]
cmp edi, 1
jbe 0x4786bd
cmp edi, 2
jb 0x4786d0
cmp dword [esp + 4], 0x4000
ja 0x4786d4
movzx esi, si
add dword [edi + esi*8 + 0x58], 1
adc dword [edi + esi*8 + 0x5c], 0
add dword [edi + 8], 1
adc dword [edi + 0xc], 0
cmp word [0x5a74e8], si
jb 0x4786ee
mov edx, dword [edi + esi*8 + 0x4c0]
test edx, edx
je 0x478719
add dword [edi + 0x10], 1
adc dword [edi + 0x14], 0
movzx ebx, word [edi + esi*8 + 0x4c6]
mov eax, dword [edx]
test eax, eax
je 0x47856d
mov ecx, eax
bswap ecx
test ecx, 0x1fc000
je 0x4788f0
prefetcht0 byte [ecx]
jmp 0x47856f
xor ecx, ecx
dec byte [edi + esi*8 + 0x4c4]
mov dword [edi + esi*8 + 0x4c0], ecx
sub dword [edi], ebx
mov eax, dword [esp]
sub ebx, dword [eax + 8]
movdqu xmm0, xmmword [edi + 0x4a0]
movd xmm1, ebx
movq xmm1, xmm1
movaps xmm2, xmmword [0x561370]
shufps xmm2, xmm1, 0x84
paddq xmm2, xmm0
movdqu xmmword [edi + 0x4a0], xmm2
mov eax, dword [esp]
mov esi, dword [eax + 0xc]
add esi, edx
cmp byte [eax + 6], 0
mov ecx, dword [esp + 0x10]
je 0x4785d3
test edx, 0xfff
je 0x4788d3
add edx, 0xfffffffc
mov dword [edx], 1
test ecx, esi
jne 0x4790a0
mov ecx, dword [esp + 0x38]
xor ecx, ebp
call fcn.005327f1
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push str....._base_allocatorpartition_allocatorpartition_root.h_1857__Check_failed:_raw_size___requested_size
call fcn.00460b40
push str....._base_allocatorpartition_allocator_shim_allocator_shim_default_dispatch_to_partition_alloc.cc_225__Check_failed:_partition_alloc::internal::base::bits::IsPowerOfTwo_alignment_
call fcn.00460b40
call fcn.0047a0e0
mov dword [esp], eax
jmp 0x478374
push str....._base_allocatorpartition_allocatorpartition_root.h_2082__Check_failed:_partition_alloc::internal::base::bits::IsPowerOfTwo_alignment_
call fcn.00460b40
call fcn.00479f90
jmp 0x478266
push str....._base_allocatorpartition_allocatorpartition_root.h_2084__Check_failed:_alignment___internal::kMaxSupportedAlignment
call fcn.00460b40
xor ebx, ebx
shl esi, 5
cmp dword [0x5a9910], 0
je 0x478923
mov ecx, dword [0x5a990c]
jmp 0x47894b
mov ecx, dword [esp]
call fcn.004604f0
mov ebx, eax
cmp ebx, 2
jae 0x47830b
jmp 0x478631
add dword [ebx + 0x28], 1
adc dword [ebx + 0x2c], 0
add dword [ebx + 0x18], 1
adc dword [ebx + 0x1c], 0
shl esi, 5
cmp dword [0x5a9910], 0
je 0x4789e8
mov ecx, dword [0x5a990c]
jmp 0x478a10
xor eax, eax
xor edi, edi
jmp 0x4786d6
movdqu xmm0, xmmword [ebx + 0x18]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [ebx + 0x18], xmm0
mov ecx, ebx
push esi
call fcn.0045ceb0
mov edx, dword [ebx + esi*8 + 0x4c0]
test edx, edx
jne 0x478341
jmp 0x478671
mov ecx, dword [esp]
call fcn.004604f0
mov edi, eax
cmp edi, 2
jae 0x478503
xor eax, eax
jmp 0x4786d6
mov al, 1
mov dword [esp + 0x14], eax
movzx esi, si
cmp dword [0x5a9910], 0
je 0x478744
mov ecx, dword [0x5a990c]
jmp 0x47876c
add dword [edi + 0x28], 1
adc dword [edi + 0x2c], 0
add dword [edi + 0x18], 1
adc dword [edi + 0x1c], 0
shl esi, 5
cmp dword [0x5a9910], 0
je 0x478b64
mov ecx, dword [0x5a990c]
jmp 0x478b8c
movdqu xmm0, xmmword [edi + 0x18]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [edi + 0x18], xmm0
mov ecx, edi
push esi
call fcn.0045ceb0
mov edx, dword [edi + esi*8 + 0x4c0]
test edx, edx
jne 0x47854a
jmp 0x4786fe
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.TryAcquireSRWLockExclusive
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a990c], eax
mov dword [0x5a9910], 1
shl esi, 5
mov eax, dword [esp]
lea edx, [eax + 0x40]
test ecx, ecx
mov dword [esp + 0x18], edx
mov dword [esp + 0xc], esi
je 0x478819
mov esi, edx
call dword [section..00cfg]
push esi
mov esi, dword [esp + 0x10]
call ecx
test al, al
jne 0x4787a1
mov ecx, dword [esp + 0x18]
call fcn.0045d630
mov eax, dword [esp]
lea ecx, [eax + esi]
add ecx, 0x48
cmp dword [esp + 4], 0x4000
ja 0x478c7f
mov esi, dword [ecx]
mov eax, dword [esi]
test eax, eax
je 0x478c7f
mov edx, dword [esp]
lea ecx, [edx + 0x48]
mov byte [esp + 0x1f], 0
mov ebx, dword [esp + 0xc]
mov ecx, dword [ecx + ebx + 0xc]
mov ebx, ecx
sub ebx, dword [edx + 8]
mov edx, dword [eax]
test edx, edx
mov dword [esp + 8], eax
je 0x47882a
mov dword [esp + 0xc], ecx
mov dword [esp + 4], esi
mov ecx, edx
bswap ecx
mov esi, ecx
xor esi, eax
cmp esi, 0x1fffff
ja 0x478d1c
mov esi, ecx
and esi, 0x1fc000
je 0x478d1c
prefetcht0 byte [ecx]
mov esi, dword [esp + 4]
jmp 0x47882c
xor eax, eax
lock bts dword [edx], eax
jb 0x478798
jmp 0x4787a1
xor ecx, ecx
mov dword [esi], ecx
mov ecx, dword [esi + 0xc]
lea edx, [ecx + 2]
and edx, 0x3ffe
and ecx, 0xffffc001
or ecx, edx
mov dword [esi + 0xc], ecx
mov eax, dword [esi + 8]
mov edx, dword [esp]
mov ecx, dword [edx + 0x117c]
add ecx, dword [eax + 0xc]
mov eax, dword [edx + 0x1180]
mov dword [edx + 0x117c], ecx
cmp eax, ecx
cmova ecx, eax
mov dword [edx + 0x1180], ecx
cmp dword [0x5a97a8], 0
je 0x478ee0
mov ecx, dword [0x5a97a4]
jmp 0x478f08
mov eax, edx
and eax, 0xffe00000
shr edx, 9
and edx, 0xff8
add edx, eax
add edx, 0x2000
mov dword [edx], 1
jmp 0x4785db
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x20], xmm0
lea esi, [esp + 0x20]
mov ecx, esi
push 0
push eax
push str.first
call fcn.0044ea50
push esi
call fcn.00403610
add esp, 4
mov ecx, edi
call fcn.0045d320
mov eax, edx
and eax, 0xffe00000
shr edx, 9
and edx, 0xff8
add edx, eax
add edx, 0x2000
jmp 0x4785cd
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x20], xmm0
lea edi, [esp + 0x20]
mov ecx, edi
push 0
push eax
push str.first
call fcn.0044ea50
push edi
call fcn.00403610
add esp, 4
mov ecx, ebx
call fcn.0045d320
push esi
call fcn.00493370
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.TryAcquireSRWLockExclusive
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a990c], eax
mov dword [0x5a9910], 1
mov eax, dword [esp]
lea edx, [eax + esi]
add edx, 0x48
mov dword [esp + 8], edx
lea edx, [eax + 0x40]
test ecx, ecx
mov dword [esp + 0x10], edx
je 0x4789de
call dword [section..00cfg]
push dword [esp + 0x10]
call ecx
test al, al
jne 0x47897c
mov ecx, dword [esp + 0x10]
call fcn.0045d630
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esp + 0xc], eax
mov eax, dword [eax]
test eax, eax
je 0x478d4b
mov edx, dword [esp]
lea ecx, [edx + 0x48]
mov byte [esp + 0x1f], 0
mov edi, dword [ecx + esi + 0xc]
mov dword [esp + 8], edi
sub edi, dword [edx + 8]
mov edx, dword [eax]
test edx, edx
mov dword [esp + 4], eax
je 0x478aaa
mov ecx, edx
bswap ecx
mov esi, ecx
xor esi, eax
cmp esi, 0x1fffff
ja 0x478ced
mov esi, ecx
and esi, 0x1fc000
je 0x478ced
prefetcht0 byte [ecx]
jmp 0x478aac
xor eax, eax
lock bts dword [edx], eax
jb 0x478973
jmp 0x47897c
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.TryAcquireSRWLockExclusive
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a990c], eax
mov dword [0x5a9910], 1
mov eax, dword [esp]
lea edx, [eax + esi]
add edx, 0x48
mov dword [esp + 8], edx
lea edx, [eax + 0x40]
test ecx, ecx
mov dword [esp + 0x10], edx
je 0x478aa0
call dword [section..00cfg]
push dword [esp + 0x10]
call ecx
test al, al
jne 0x478a41
mov ecx, dword [esp + 0x10]
call fcn.0045d630
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esp + 0xc], eax
mov eax, dword [eax]
test eax, eax
je 0x478dba
mov edx, dword [esp]
lea ecx, [edx + 0x48]
mov byte [esp + 0x1f], 0
mov edi, dword [ecx + esi + 0xc]
mov dword [esp + 8], edi
sub edi, dword [edx + 8]
mov edx, dword [eax]
test edx, edx
mov dword [esp + 4], eax
je 0x478b07
mov ecx, edx
bswap ecx
mov esi, ecx
xor esi, eax
cmp esi, 0x1fffff
ja 0x478ced
mov esi, ecx
and esi, 0x1fc000
je 0x478ced
prefetcht0 byte [ecx]
jmp 0x478b09
xor eax, eax
lock bts dword [edx], eax
jb 0x478a38
jmp 0x478a41
xor ecx, ecx
mov eax, dword [esp + 0xc]
mov dword [eax], ecx
mov ecx, dword [eax + 0xc]
lea edx, [ecx + 2]
and edx, 0x3ffe
and ecx, 0xffffc001
or ecx, edx
mov dword [eax + 0xc], ecx
mov eax, dword [eax + 8]
mov edx, dword [esp]
mov ecx, dword [edx + 0x117c]
add ecx, dword [eax + 0xc]
mov eax, dword [edx + 0x1180]
mov dword [edx + 0x117c], ecx
cmp eax, ecx
cmova ecx, eax
mov dword [edx + 0x1180], ecx
cmp dword [0x5a97a8], 0
je 0x478f4d
mov ecx, dword [0x5a97a4]
jmp 0x478f75
xor ecx, ecx
mov eax, dword [esp + 0xc]
mov dword [eax], ecx
mov ecx, dword [eax + 0xc]
lea edx, [ecx + 2]
and edx, 0x3ffe
and ecx, 0xffffc001
or ecx, edx
mov dword [eax + 0xc], ecx
mov eax, dword [eax + 8]
mov edx, dword [esp]
mov ecx, dword [edx + 0x117c]
add ecx, dword [eax + 0xc]
mov eax, dword [edx + 0x1180]
mov dword [edx + 0x117c], ecx
cmp eax, ecx
cmova ecx, eax
mov dword [edx + 0x1180], ecx
cmp dword [0x5a97a8], 0
je 0x478fb7
mov ecx, dword [0x5a97a4]
jmp 0x478fdf
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.TryAcquireSRWLockExclusive
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a990c], eax
mov dword [0x5a9910], 1
mov eax, dword [esp]
lea edx, [eax + esi]
add edx, 0x48
mov dword [esp + 0x18], edx
lea edx, [eax + 0x40]
test ecx, ecx
mov dword [esp + 0xc], edx
je 0x478c18
call dword [section..00cfg]
push dword [esp + 0xc]
call ecx
test al, al
jne 0x478bbd
mov ecx, dword [esp + 0xc]
call fcn.0045d630
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
mov eax, dword [eax]
test eax, eax
je 0x478e29
mov edx, dword [esp]
lea ecx, [edx + 0x48]
mov byte [esp + 0x1f], 0
mov ebx, dword [ecx + esi + 0xc]
mov dword [esp + 4], ebx
sub ebx, dword [edx + 8]
mov edx, dword [eax]
test edx, edx
mov dword [esp + 8], eax
je 0x478c22
mov ecx, edx
bswap ecx
mov esi, ecx
xor esi, eax
cmp esi, 0x1fffff
ja 0x478e97
mov esi, ecx
and esi, 0x1fc000
je 0x478e97
prefetcht0 byte [ecx]
jmp 0x478c24
xor eax, eax
lock bts dword [edx], eax
jb 0x478bb4
jmp 0x478bbd
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov dword [eax], ecx
mov ecx, dword [eax + 0xc]
lea edx, [ecx + 2]
and edx, 0x3ffe
and ecx, 0xffffc001
or ecx, edx
mov dword [eax + 0xc], ecx
mov eax, dword [eax + 8]
mov edx, dword [esp]
mov ecx, dword [edx + 0x117c]
add ecx, dword [eax + 0xc]
mov eax, dword [edx + 0x1180]
mov dword [edx + 0x117c], ecx
cmp eax, ecx
cmova ecx, eax
mov dword [edx + 0x1180], ecx
cmp dword [0x5a97a8], 0
je 0x479039
mov ecx, dword [0x5a97a4]
jmp 0x479061
lea eax, [esp + 0x1f]
push eax
push dword [esp + 8]
push ebx
push 0
push dword [esp + 0x10]
call fcn.0048c1a0
mov dword [esp + 8], eax
test eax, eax
je 0x478ec6
mov ecx, dword [esp + 8]
mov eax, ecx
and eax, 0xffe00000
shr ecx, 9
and ecx, 0xfe0
lea edx, [ecx + eax]
movzx eax, byte [ecx + eax + 0x101e]
and eax, 0x3f
shl eax, 5
sub edx, eax
lea esi, [edx + 0x1000]
test byte [edx + 0x100f], 8
jne 0x478f2b
mov ecx, dword [esi + 8]
add ecx, 0xc
mov ebx, dword [ecx]
mov ecx, dword [esp]
sub ebx, dword [ecx + 8]
jmp 0x478845
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x20], xmm0
lea esi, [esp + 0x20]
mov ecx, esi
push 0
push edx
push str.first
call fcn.0044ea50
push esi
call fcn.00403610
add esp, 4
mov ecx, dword [esp + 8]
call fcn.0045d320
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x20], xmm0
lea esi, [esp + 0x20]
mov ecx, esi
push 0
push edx
push str.first
call fcn.0044ea50
push esi
call fcn.00403610
add esp, 4
mov ecx, dword [esp + 0xc]
call fcn.0045d320
lea eax, [esp + 0x1f]
push eax
push 0x4000
push edi
push 0
push dword [esp + 0x10]
call fcn.0048c1a0
mov dword [esp + 4], eax
test eax, eax
je 0x478f33
mov ecx, dword [esp + 4]
mov eax, ecx
and eax, 0xffe00000
shr ecx, 9
and ecx, 0xfe0
lea edx, [ecx + eax]
movzx eax, byte [ecx + eax + 0x101e]
and eax, 0x3f
shl eax, 5
sub edx, eax
lea eax, [edx + 0x1000]
test byte [edx + 0x100f], 8
jne 0x478f95
mov ecx, dword [eax + 8]
add ecx, 0xc
mov edi, dword [ecx]
mov ecx, dword [esp]
sub edi, dword [ecx + 8]
jmp 0x478ac9
lea eax, [esp + 0x1f]
push eax
push 0x4000
push edi
push 0
push dword [esp + 0x10]
call fcn.0048c1a0
mov dword [esp + 4], eax
test eax, eax
je 0x478f9d
mov ecx, dword [esp + 4]
mov eax, ecx
and eax, 0xffe00000
shr ecx, 9
and ecx, 0xfe0
lea edx, [ecx + eax]
movzx eax, byte [ecx + eax + 0x101e]
and eax, 0x3f
shl eax, 5
sub edx, eax
lea eax, [edx + 0x1000]
test byte [edx + 0x100f], 8
jne 0x479017
mov ecx, dword [eax + 8]
add ecx, 0xc
mov edi, dword [ecx]
mov ecx, dword [esp]
sub edi, dword [ecx + 8]
jmp 0x478b26
lea eax, [esp + 0x1f]
push eax
push dword [esp + 8]
push ebx
push 0
push dword [esp + 0x10]
call fcn.0048c1a0
mov dword [esp + 8], eax
test eax, eax
je 0x47901f
mov ecx, dword [esp + 8]
mov eax, ecx
and eax, 0xffe00000
shr ecx, 9
and ecx, 0xfe0
lea edx, [ecx + eax]
movzx eax, byte [ecx + eax + 0x101e]
and eax, 0x3f
shl eax, 5
sub edx, eax
lea eax, [edx + 0x1000]
test byte [edx + 0x100f], 8
jne 0x4790aa
mov ecx, dword [eax + 8]
add ecx, 0xc
mov ebx, dword [ecx]
mov ecx, dword [esp]
sub ebx, dword [ecx + 8]
jmp 0x478c41
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x20], xmm0
lea esi, [esp + 0x20]
mov ecx, esi
push 0
push edx
push str.first
call fcn.0044ea50
push esi
call fcn.00403610
add esp, 4
mov ecx, dword [esp + 4]
call fcn.0045d320
mov dword [esp + 8], 0
mov ebx, 0xffffffff
cmp dword [0x5a97a8], 0
jne 0x478878
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0x560f2f
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a97a4], eax
mov dword [0x5a97a8], 1
test ecx, ecx
je 0x478f1a
call dword [section..00cfg]
push dword [esp + 0x18]
call ecx
jmp 0x478f22
xor eax, eax
mov ecx, dword [esp + 0x18]
xchg dword [ecx], eax
mov eax, dword [esp + 0x14]
jmp 0x47907d
lea ecx, [esi + 0x20]
jmp 0x478ce0
mov dword [esp + 4], 0
mov edi, 0xffffffff
cmp dword [0x5a97a8], 0
jne 0x478afc
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0x560f2f
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a97a4], eax
mov dword [0x5a97a8], 1
test ecx, ecx
je 0x478f89
call dword [section..00cfg]
push dword [esp + 0x10]
call ecx
xor eax, eax
jmp 0x478ffb
xor eax, eax
xor ecx, ecx
mov edx, dword [esp + 0x10]
xchg dword [edx], ecx
jmp 0x478ffb
lea ecx, [eax + 0x20]
jmp 0x478dad
mov dword [esp + 4], 0
mov edi, 0xffffffff
cmp dword [0x5a97a8], 0
jne 0x478b59
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0x560f2f
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a97a4], eax
mov dword [0x5a97a8], 1
test ecx, ecx
je 0x478ff1
call dword [section..00cfg]
push dword [esp + 0x10]
call ecx
jmp 0x478ff9
xor eax, eax
mov ecx, dword [esp + 0x10]
xchg dword [ecx], eax
mov al, 1
mov edx, dword [esp + 4]
test edx, edx
je 0x479010
test al, al
je 0x47840c
jmp 0x4783e5
xor esi, esi
jmp 0x4785db
lea ecx, [eax + 0x20]
jmp 0x478e1c
mov dword [esp + 8], 0
mov ebx, 0xffffffff
cmp dword [0x5a97a8], 0
jne 0x478c74
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0x560f2f
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
mov dword [0x5a97a4], eax
mov dword [0x5a97a8], 1
test ecx, ecx
je 0x479073
call dword [section..00cfg]
push dword [esp + 0xc]
call ecx
jmp 0x47907b
xor eax, eax
mov ecx, dword [esp + 0xc]
xchg dword [ecx], eax
mov al, 1
mov edx, dword [esp + 8]
test edx, edx
je 0x479092
test al, al
je 0x4785ac
jmp 0x478585
xor esi, esi
mov ecx, dword [esp + 0x10]
test ecx, esi
je 0x4785db
push str....._base_allocatorpartition_allocatorpartition_root.h_2136__Check_failed:___reinterpret_cast_uintptr_t__object____alignment___1__
call fcn.00460b40
lea ecx, [eax + 0x20]
jmp 0x478e8a