Function at 0x40d510
Capabilities:
Parse pe header

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5721f1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x180
push esi
push edi
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x180], 0
push str.X3NybV1xcl9wcl1tbA
lea ecx, [ebp - 0x190]
mov dword [ebp - 0x17c], 0
movups xmmword [ebp - 0x190], xmm0
call fcn.0042b390
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x178]
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x168], 0
push str.cXJfcHJda2Nsc11tbA
movups xmmword [ebp - 0x178], xmm0
mov dword [ebp - 0x164], 0
call fcn.0042b390
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x160]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x150], 0
push str.YW1scmN2cnNfal1tZGRjcHE
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x14c], 0
call fcn.0042b390
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x148]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x138], 0
push str.bmNwZ21iZ2Ffal1tZGRjcHE
movups xmmword [ebp - 0x148], xmm0
mov dword [ebp - 0x134], 0
call fcn.0042b390
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x130]
push 0x24
xorps xmm0, xmm0
mov dword [ebp - 0x120], 0
push str.bmNwcW1sZ2pneGNiXWxtcmdkZ2FfcmdtbHE
movups xmmword [ebp - 0x130], xmm0
mov dword [ebp - 0x11c], 0
call fcn.0042b390
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x118]
push 0x1c
xorps xmm0, xmm0
mov dword [ebp - 0x108], 0
push str.Zl9wYnVfcGNdYW1qamNhcmdsZQ
movups xmmword [ebp - 0x118], xmm0
mov dword [ebp - 0x104], 0
call fcn.0042b390
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x100]
push 0x1c
xorps xmm0, xmm0
mov dword [ebp - 0xf0], 0
push str.cW1kcnVfcGNdYW1qamNhcmdsZQ
movups xmmword [ebp - 0x100], xmm0
mov dword [ebp - 0xec], 0
call fcn.0042b390
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xe8]
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0xd8], 0
push str.YHBtdXFjcF1xY19wYWY
movups xmmword [ebp - 0xe8], xmm0
mov dword [ebp - 0xd4], 0
call fcn.0042b390
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xd0]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push str.cWNfcGFmXWtjbHM
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xbc], 0
call fcn.0042b390
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xb8]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0xa8], 0
push str.amdsaV1xc2Bxcmdyc3JnbWw
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa4], 0
call fcn.0042b390
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xa0]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x90], 0
push str.YHBtdXFjcF1fYXJndGdydw
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x8c], 0
call fcn.0042b390
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x88]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x78], 0
push str.YHJsXXZdYWptcWM
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x74], 0
call fcn.0042b390
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x70]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
push str.cWZtc2piXV9zcm1dc25iX3Jj
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], 0
call fcn.0042b390
push ecx
mov byte [ebp - 4], 0xc
mov edi, esp
mov dword [ebp - 0x1c], esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x190]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40d96e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x190]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40d890
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x10
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40d8e9
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40d927
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d91d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdae
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40d956
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40da5a
sub esp, 0x18
lea eax, [ebp - 0x190]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x11
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40d9b0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x12
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40da25
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40da1b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdb3
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40da58
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d3a], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x178]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40dbee
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x178]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x15
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40db10
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x16
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40db69
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40dba7
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40db9d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdb8
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40dbd6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40dcda
sub esp, 0x18
lea eax, [ebp - 0x178]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x17
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40dc30
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x18
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40dca5
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40dc9b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdbd
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40dcd8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d38], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x160]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40de6e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x160]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x1b
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40dd90
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x1c
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40dde9
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40de27
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40de1d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdc2
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40de56
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40df5a
sub esp, 0x18
lea eax, [ebp - 0x160]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x1d
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40deb0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x1e
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40df25
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40df1b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdc7
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40df58
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d3b], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x148]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40e0ee
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x20
lea eax, [ebp - 0x148]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x21
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e010
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x22
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40e069
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e0a7
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e09d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdcc
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e0d6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
sete al
jmp 0x40e1da
sub esp, 0x18
lea eax, [ebp - 0x148]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x23
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e130
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x24
call fcn.0041d080
push 1
push 0x587af0
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e1a5
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e19b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdd1
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e1d8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d39], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x130]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40e367
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x130]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x27
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e290
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x28
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40e2e9
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e327
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e31d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdd6
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e356
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
jmp 0x40e44b
sub esp, 0x18
lea eax, [ebp - 0x130]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x29
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e3a3
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x2a
call fcn.0041d080
push 1
push 0x587af0
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e418
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e40e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fddb
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e44b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x118]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40e5de
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x2c
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x2d
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e500
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x2e
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40e559
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e597
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e58d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fde0
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e5c6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40e6ca
sub esp, 0x18
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x2f
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e620
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x30
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e695
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e68b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fde5
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e6c8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d3c], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x100]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40e85e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x100]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x33
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e780
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x34
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40e7d9
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e817
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e80d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdea
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e846
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40e94a
sub esp, 0x18
lea eax, [ebp - 0x100]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x35
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40e8a0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x36
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40e915
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e90b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdef
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40e948
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d3d], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0xe8]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40ead7
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0xe8]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x39
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ea00
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x3a
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40ea59
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x39
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40ea97
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ea8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdf4
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40eac6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
jmp 0x40ebbb
sub esp, 0x18
lea eax, [ebp - 0xe8]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x3b
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40eb13
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x3c
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40eb88
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40eb7e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdf9
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ebbb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x3d
lea eax, [ebp - 0xd0]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40ed4e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0xd0]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x3f
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ec70
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x40
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40ecc9
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x3f
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40ed07
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ecfd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fdfe
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ed36
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
sete al
jmp 0x40ee3a
sub esp, 0x18
lea eax, [ebp - 0xd0]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x41
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ed90
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x42
call fcn.0041d080
push 1
push 0x587af0
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x41
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40ee05
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40edfb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe03
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ee38
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5b5d3e], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0xb8]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40efce
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0xb8]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x45
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40eef0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x46
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40ef49
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40ef87
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ef7d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe08
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40efb6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40f0ba
sub esp, 0x18
lea eax, [ebp - 0xb8]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x47
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f010
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x48
call fcn.0041d080
push 2
push 0x588dc4
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f085
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f07b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe0d
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f0b8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xor al, al
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5bc330], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x49
lea eax, [ebp - 0xa0]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40f24e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0xa0]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x4b
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f170
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x4c
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40f1c9
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x4b
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f207
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f1fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe12
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f236
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40f33a
sub esp, 0x18
lea eax, [ebp - 0xa0]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x4d
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f290
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x4e
call fcn.0041d080
push 2
push 0x588dc4
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f305
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f2fb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe17
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x18]
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f338
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xor al, al
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5bc331], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x70]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40f5fa
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x50
lea eax, [ebp - 0x70]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x18]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x51
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f3f0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x52
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40f449
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x51
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f487
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f47d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe1c
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
or edi, 0xffffffff
mov word [ebp - 0x34], ax
mov dword [ebp - 0x24], 0
add edx, 0xfffffff0
mov dword [ebp - 0x20], 7
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f4b8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.0042c3d0
cmp dword [ebp - 0x38], 0
setne byte [0x5b5d3f]
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x40fe30
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push str.TkE_bm5Rcm1wYz9zcm1TbmJfcmNw
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x53
call fcn.0042cad0
test al, al
jne 0x40f50f
push 0x1c
push str.TkE_bm5Rcm1wYz9zcm1TbmJfcmNw
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
mov byte [ebp - 4], 0x54
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x40fe21
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x40], eax
push 0x58b2e4
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x55
call fcn.0042cad0
test al, al
jne 0x40f553
push 1
push 0x58b2e4
lea ecx, [ebp - 0x40]
call fcn.0042cdf0
push ecx
mov byte [ebp - 4], 0x56
mov esi, esp
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x1c], eax
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x14]
mov dword [esi], eax
call fcn.00442cb0
add esp, 4
lea edx, [ebp - 0x40]
mov byte [ebp - 4], 0x57
mov ecx, eax
call fcn.0044c250
mov edx, dword [ebp - 0x14]
mov ecx, edi
mov byte [ebp - 0x39], al
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x40f5a8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x54
mov eax, edi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f5c6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, byte [0x5b5d3f]
test al, al
je 0x40f5e3
cmp byte [ebp - 0x39], 0
jne 0x40f5df
call fcn.0044c860
mov al, byte [0x5b5d3f]
test al, al
jne 0x40f5ee
cmp byte [ebp - 0x39], 0
je 0x40f5ee
call fcn.0044d1f0
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x1c]
jmp 0x40f7ed
sub esp, 0x18
lea eax, [ebp - 0x70]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x1c]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x58
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f633
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x59
call fcn.0041d080
push 1
push 0x587aec
mov ecx, eax
call fcn.0042bb40
mov byte [ebp - 4], 0x58
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f6a8
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f69e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe2b
push ecx
push edx
call fcn.00546e91
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x1c]
or edi, 0xffffffff
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
mov eax, edi
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f6dd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [0x5b5d3f], 1
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x40fe30
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push str.TkE_bm5Rcm1wYz9zcm1TbmJfcmNw
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x5a
call fcn.0042cad0
test al, al
jne 0x40f724
push 0x1c
push str.TkE_bm5Rcm1wYz9zcm1TbmJfcmNw
lea ecx, [ebp - 0x18]
call fcn.0042cdf0
mov byte [ebp - 4], 0x5b
call fcn.0042c860
mov ecx, eax
test ecx, ecx
je 0x40fe3a
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x40], eax
push 0x58b2e4
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x5c
call fcn.0042cad0
test al, al
jne 0x40f768
push 1
push 0x58b2e4
lea ecx, [ebp - 0x40]
call fcn.0042cdf0
push ecx
mov byte [ebp - 4], 0x5d
mov esi, esp
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x14], eax
call fcn.0042c200
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [esi], eax
call fcn.00442cb0
add esp, 4
lea edx, [ebp - 0x40]
mov byte [ebp - 4], 0x5e
mov ecx, eax
call fcn.0044c250
mov edx, dword [ebp - 0x1c]
mov ecx, edi
mov byte [ebp - 0x39], al
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x40f7bd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x5b
mov eax, edi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f7db
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp byte [ebp - 0x39], 0
jne 0x40f7e6
call fcn.0044c860
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x14]
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f801
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5bbb14]
lea ecx, [ecx - 0x10]
call fcn.0042c200
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00442cb0
sub esp, 0x18
mov byte [ebp - 4], 0x5f
lea eax, [ebp - 0x88]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042c2f0
mov ecx, esi
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.00445bf0
add esp, 8
test al, al
je 0x40f980
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x58]
call fcn.0042b430
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x60
lea eax, [ebp - 0x88]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x1c]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x61
xorps xmm0, xmm0
mov ecx, dword [eax]
mov edx, ecx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea edi, [edx + 2]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x40f8b1
sub edx, edi
sar edx, 1
push edx
push ecx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x62
call fcn.0041d080
mov edi, eax
cmp edi, esi
je 0x40f90a
mov ecx, edi
call fcn.0042c3d0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f944
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f93a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe44
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x1c]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f973
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
call fcn.0042c3d0
jmp 0x40fa60
sub esp, 0x18
lea eax, [ebp - 0x88]
mov ecx, esp
push eax
call fcn.0042c2f0
lea ecx, [ebp - 0x1c]
call fcn.00442a50
add esp, 0x18
mov byte [ebp - 4], 0x63
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f9c0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042b390
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x64
call fcn.0041d080
push 1
push 0x587af0
mov ecx, eax
call fcn.0042bb40
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40fa31
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fa27
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe49
push ecx
push edx
call fcn.00546e91
add esp, 8
mov edx, dword [ebp - 0x1c]
xor eax, eax
mov word [ebp - 0x34], ax
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0
or eax, 0xffffffff
mov dword [ebp - 0x20], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40fa60
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x5c]
cmp ecx, 8
jb 0x40fa9a
mov edx, dword [ebp - 0x70]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fa90
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x74]
cmp ecx, 8
jb 0x40fad7
mov edx, dword [ebp - 0x88]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40facd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x8c]
cmp ecx, 8
jb 0x40fb17
mov edx, dword [ebp - 0xa0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fb0d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0xa4]
cmp ecx, 8
jb 0x40fb57
mov edx, dword [ebp - 0xb8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fb4d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0xbc]
cmp ecx, 8
jb 0x40fb97
mov edx, dword [ebp - 0xd0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fb8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0xd4]
cmp ecx, 8
jb 0x40fbd7
mov edx, dword [ebp - 0xe8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fbcd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0xec]
cmp ecx, 8
jb 0x40fc17
mov edx, dword [ebp - 0x100]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fc0d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x104]
cmp ecx, 8
jb 0x40fc57
mov edx, dword [ebp - 0x118]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fc4d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x11c]
cmp ecx, 8
jb 0x40fc97
mov edx, dword [ebp - 0x130]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fc8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x134]
cmp ecx, 8
jb 0x40fcd7
mov edx, dword [ebp - 0x148]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fccd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x14c]
cmp ecx, 8
jb 0x40fd17
mov edx, dword [ebp - 0x160]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd0d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x164]
cmp ecx, 8
jb 0x40fd57
mov edx, dword [ebp - 0x178]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd4d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0x17c]
cmp ecx, 8
jb 0x40fd97
mov edx, dword [ebp - 0x190]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fe4e
push ecx
push edx
call fcn.00546e91
add esp, 8
mov ecx, dword [ebp - 0xc]
xor al, al
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
push 0x80004005
call fcn.0042cdd0
call fcn.0054be7f
push 0x80004005
call fcn.0042cdd0
push 0x80004005
call fcn.0042cdd0
call fcn.0054be7f
call fcn.0054be7f
call fcn.0054be7f
int3