Function at 0x40e9f0
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 0x579cb1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x180
push esi
push edi
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x17c], 0
push str.YTlGoMgBMeMl0xSjJT5E00ZlXQ8
lea ecx, [ebp - 0x18c]
mov dword [ebp - 0x178], 0
movups xmmword [ebp - 0x18c], xmm0
call fcn.0042d7e0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x174]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x164], 0
push str.YXoxNORIO7UEsVLJVxcoDw9umVg8
movups xmmword [ebp - 0x174], xmm0
mov dword [ebp - 0x160], 0
call fcn.0042d7e0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x15c]
push 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x14c], 0
push str.Y1lFLdgA2RKwIGEITED8AjUasGQU_cIAQQ
movups xmmword [ebp - 0x15c], xmm0
mov dword [ebp - 0x148], 0
call fcn.0042d7e0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x144]
push 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x134], 0
push str.bExnTSRwpLFSADvKA4qcDSA4uJgoqkAjsf
movups xmmword [ebp - 0x144], xmm0
mov dword [ebp - 0x130], 0
call fcn.0042d7e0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x12c]
push 0x31
xorps xmm0, xmm0
mov dword [ebp - 0x11c], 0
push str.Rmc08aDYCDRhsp3CV0EcLx1R1DBkJhWxwvsAV0LDJxNdyBygU
movups xmmword [ebp - 0x12c], xmm0
mov dword [ebp - 0x118], 0
call fcn.0042d7e0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x114]
push 0x27
xorps xmm0, xmm0
mov dword [ebp - 0x104], 0
push str.R2tXscy8KqJRcwkCiUW9GAg4CHysOGNAcuMBTA
movups xmmword [ebp - 0x114], xmm0
mov dword [ebp - 0x100], 0
call fcn.0042d7e0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xfc]
push 0x27
xorps xmm0, xmm0
mov dword [ebp - 0xec], 0
push str.YkhDFZREnMJREV1KTEASPSss5CQ4t7IBELuJiQ
movups xmmword [ebp - 0xfc], xmm0
mov dword [ebp - 0xe8], 0
call fcn.0042d7e0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xe4]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0xd4], 0
push str.SHNKEbSoBmJRo7KFjgy3OxYrGHysb
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd0], 0
call fcn.0042d7e0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xcc]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0xbc], 0
push str.SFhujYTs9ADxMryMDEMQLTYb
movups xmmword [ebp - 0xcc], xmm0
mov dword [ebp - 0xb8], 0
call fcn.0042d7e0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xb4]
push 0x22
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push str.cTcw2Qh1e6XikuNREUgkAkNZTNgRDeWS0f
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0
call fcn.0042d7e0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x9c]
push 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.S0pSXVSk4vPSI4zLyAKiKikmQPD0j1Jiw
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0
call fcn.0042d7e0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x84]
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x74], 0
push str.RElFEcCY9TKy88CFiYcdKzog
movups xmmword [ebp - 0x84], xmm0
mov dword [ebp - 0x70], 0
call fcn.0042d7e0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x6c]
push 0x27
xorps xmm0, xmm0
mov dword [ebp - 0x5c], 0
push str.UmdhSeiEP0Dg8XAz4byJxMOyJScXZBRsmPAg
movups xmmword [ebp - 0x6c], xmm0
mov dword [ebp - 0x58], 0
call fcn.0042d7e0
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 [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x18c]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40ee4e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x18c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40ed70
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x10
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40edc9
mov ecx, edi
call fcn.0042ed00
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 0x40ee07
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40edfd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111ce
push ecx
push edx
call fcn.0054fb04
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 0x40ee36
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40ef3a
sub esp, 0x18
lea eax, [ebp - 0x18c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40ee90
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x12
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40ef05
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40eefb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111d3
push ecx
push edx
call fcn.0054fb04
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 0x40ef38
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 [0x5c5d3a], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x174]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40f0ce
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x174]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40eff0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x16
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40f049
mov ecx, edi
call fcn.0042ed00
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 0x40f087
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f07d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111d8
push ecx
push edx
call fcn.0054fb04
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 0x40f0b6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40f1ba
sub esp, 0x18
lea eax, [ebp - 0x174]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f110
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x18
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f185
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f17b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111dd
push ecx
push edx
call fcn.0054fb04
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 0x40f1b8
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 [0x5c5d38], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x15c]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40f34e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x15c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f270
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x1c
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40f2c9
mov ecx, edi
call fcn.0042ed00
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 0x40f307
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f2fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111e2
push ecx
push edx
call fcn.0054fb04
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 0x40f336
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40f43a
sub esp, 0x18
lea eax, [ebp - 0x15c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f390
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x1e
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f405
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f3fb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111e7
push ecx
push edx
call fcn.0054fb04
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 0x40f438
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 [0x5c5d3b], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x144]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40f5ce
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x20
lea eax, [ebp - 0x144]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f4f0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x22
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40f549
mov ecx, edi
call fcn.0042ed00
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 0x40f587
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f57d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111ec
push ecx
push edx
call fcn.0054fb04
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 0x40f5b6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
sete al
jmp 0x40f6ba
sub esp, 0x18
lea eax, [ebp - 0x144]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f610
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x24
call fcn.0041f6d0
push 1
push 0x590ca0
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f685
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f67b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111f1
push ecx
push edx
call fcn.0054fb04
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 0x40f6b8
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 [0x5c5d39], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x12c]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40f847
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x12c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f770
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x28
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40f7c9
mov ecx, edi
call fcn.0042ed00
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 0x40f807
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f7fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111f6
push ecx
push edx
call fcn.0054fb04
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 0x40f836
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
jmp 0x40f92b
sub esp, 0x18
lea eax, [ebp - 0x12c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f883
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x2a
call fcn.0041f6d0
push 1
push 0x590ca0
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40f8f8
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f8ee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4111fb
push ecx
push edx
call fcn.0054fb04
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 0x40f92b
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 [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x114]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40fabe
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x2c
lea eax, [ebp - 0x114]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40f9e0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x2e
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40fa39
mov ecx, edi
call fcn.0042ed00
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 0x40fa77
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fa6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411200
push ecx
push edx
call fcn.0054fb04
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 0x40faa6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40fbaa
sub esp, 0x18
lea eax, [ebp - 0x114]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40fb00
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x30
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40fb75
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fb6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411205
push ecx
push edx
call fcn.0054fb04
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 0x40fba8
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 [0x5c5d3c], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0xfc]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40fd3e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0xfc]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40fc60
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x34
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40fcb9
mov ecx, edi
call fcn.0042ed00
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 0x40fcf7
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fced
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41120a
push ecx
push edx
call fcn.0054fb04
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 0x40fd26
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x40fe2a
sub esp, 0x18
lea eax, [ebp - 0xfc]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40fd80
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x36
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x40fdf5
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40fdeb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41120f
push ecx
push edx
call fcn.0054fb04
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 0x40fe28
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 [0x5c5d3d], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0xe4]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x40ffb7
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0xe4]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40fee0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x3a
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x40ff39
mov ecx, edi
call fcn.0042ed00
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 0x40ff77
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ff6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411214
push ecx
push edx
call fcn.0054fb04
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 0x40ffa6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
jmp 0x41009b
sub esp, 0x18
lea eax, [ebp - 0xe4]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x40fff3
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x3c
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x410068
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41005e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411219
push ecx
push edx
call fcn.0054fb04
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 0x41009b
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 [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x3d
lea eax, [ebp - 0xcc]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x41022e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0xcc]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x410150
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x40
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x4101a9
mov ecx, edi
call fcn.0042ed00
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 0x4101e7
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4101dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41121e
push ecx
push edx
call fcn.0054fb04
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 0x410216
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
sete al
jmp 0x41031a
sub esp, 0x18
lea eax, [ebp - 0xcc]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x410270
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x42
call fcn.0041f6d0
push 1
push 0x590ca0
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x41
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x4102e5
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4102db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411223
push ecx
push edx
call fcn.0054fb04
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 0x410318
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 [0x5c5d3e], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0xb4]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x4104ae
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0xb4]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x4103d0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x46
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x410429
mov ecx, edi
call fcn.0042ed00
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 0x410467
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41045d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411228
push ecx
push edx
call fcn.0054fb04
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 0x410496
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x41059a
sub esp, 0x18
lea eax, [ebp - 0xb4]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x4104f0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x48
call fcn.0041f6d0
push 2
push 0x5928c0
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x410565
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41055b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41122d
push ecx
push edx
call fcn.0054fb04
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 0x410598
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 [0x5cc638], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x49
lea eax, [ebp - 0x9c]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x41072e
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0x9c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x410650
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x4c
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x4106a9
mov ecx, edi
call fcn.0042ed00
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 0x4106e7
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4106dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411232
push ecx
push edx
call fcn.0054fb04
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 0x410716
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne al
jmp 0x41081a
sub esp, 0x18
lea eax, [ebp - 0x9c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x410770
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x4e
call fcn.0041f6d0
push 2
push 0x5928c0
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x4107e5
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4107db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411237
push ecx
push edx
call fcn.0054fb04
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 0x410818
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 [0x5cc639], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x6c]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x410a7d
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x50
lea eax, [ebp - 0x6c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x18]
call fcn.00445250
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 0x4108d0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x52
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x410929
mov ecx, edi
call fcn.0042ed00
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 0x410967
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41095d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41123c
push ecx
push edx
call fcn.0054fb04
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 0x410998
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
call fcn.0042ed00
cmp dword [ebp - 0x38], 0
setne byte [0x5c5d3f]
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x411246
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push str.MFhqERGAbYKzRAlCx4rOQj0rQMUQ3APzRU2OR4hqQg
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x53
call fcn.0042f410
test al, al
jne 0x4109ef
push 0x2c
push str.MFhqERGAbYKzRAlCx4rOQj0rQMUQ3APzRU2OR4hqQg
lea ecx, [ebp - 0x18]
call fcn.0042f740
push ecx
mov byte [ebp - 4], 0x54
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.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x14]
mov dword [esi], eax
call fcn.00445630
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x55
call fcn.0044ddd0
mov byte [ebp - 4], 0x54
mov ah, al
mov edx, dword [ebp - 0x14]
mov ecx, edi
mov byte [ebp - 0x39], ah
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x410a4a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ah, byte [ebp - 0x39]
mov al, byte [0x5c5d3f]
test al, al
je 0x410a68
test ah, ah
jne 0x410a64
call fcn.0044e3d0
mov al, byte [0x5c5d3f]
mov ah, byte [ebp - 0x39]
test al, al
jne 0x410a71
test ah, ah
je 0x410a71
call fcn.0044ecf0
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x1c]
jmp 0x410c10
sub esp, 0x18
lea eax, [ebp - 0x6c]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x1c]
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0x56
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 0x410ab6
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x57
call fcn.0041f6d0
push 1
push 0x590c9c
mov ecx, eax
call fcn.0042df80
mov byte [ebp - 4], 0x56
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x410b2b
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410b21
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411241
push ecx
push edx
call fcn.0054fb04
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 0x410b60
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [0x5c5d3f], 1
call fcn.0042f1a0
mov ecx, eax
test ecx, ecx
je 0x411246
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push str.NUlNjNGUK0DERFQGjlbaRywMZQUEmXGERR2KDlRORw
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x58
call fcn.0042f410
test al, al
jne 0x410ba7
push 0x2c
push str.NUlNjNGUK0DERFQGjlbaRywMZQUEmXGERR2KDlRORw
lea ecx, [ebp - 0x18]
call fcn.0042f740
push ecx
mov byte [ebp - 4], 0x59
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.0042eab0
add eax, 0x10
lea ecx, [ebp - 0x1c]
mov dword [esi], eax
call fcn.00445630
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x5a
call fcn.0044ddd0
mov byte [ebp - 4], 0x59
mov ecx, edi
mov edx, dword [ebp - 0x1c]
mov byte [ebp - 0x39], al
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x410c00
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, byte [ebp - 0x39]
test al, al
jne 0x410c09
call fcn.0044e3d0
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 0x410c24
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 [0x5cbf24]
lea ecx, [ecx - 0x10]
call fcn.0042eab0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00445630
sub esp, 0x18
mov byte [ebp - 4], 0x5b
lea eax, [ebp - 0x84]
mov ecx, esp
lea edi, [ebp - 0x38]
push eax
call fcn.0042eba0
mov ecx, esi
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, SysReAllocString
mov ecx, edi
call fcn.004489b0
add esp, 8
test al, al
je 0x410da3
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0042d880
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0x5c
lea eax, [ebp - 0x84]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x1c]
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0x5d
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 0x410cd4
sub edx, edi
sar edx, 1
push edx
push ecx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x5e
call fcn.0041f6d0
mov edi, eax
cmp edi, esi
je 0x410d2d
mov ecx, edi
call fcn.0042ed00
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 0x410d67
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410d5d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411250
push ecx
push edx
call fcn.0054fb04
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 0x410d96
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
call fcn.0042ed00
jmp 0x410e80
sub esp, 0x18
lea eax, [ebp - 0x84]
mov ecx, esp
push eax
call fcn.0042eba0
lea ecx, [ebp - 0x1c]
call fcn.00445250
add esp, 0x18
mov byte [ebp - 4], 0x5f
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
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x410de0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x34]
call fcn.0042d7e0
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x60
call fcn.0041f6d0
push 1
push 0x590ca0
mov ecx, eax
call fcn.0042df80
mov ecx, dword [ebp - 0x20]
cmp ecx, 8
jb 0x410e51
mov edx, dword [ebp - 0x34]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410e47
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411255
push ecx
push edx
call fcn.0054fb04
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 0x410e80
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x58]
cmp ecx, 8
jb 0x410eba
mov edx, dword [ebp - 0x6c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410eb0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x70]
cmp ecx, 8
jb 0x410ef7
mov edx, dword [ebp - 0x84]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410eed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x410f37
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410f2d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0xa0]
cmp ecx, 8
jb 0x410f77
mov edx, dword [ebp - 0xb4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410f6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0xb8]
cmp ecx, 8
jb 0x410fb7
mov edx, dword [ebp - 0xcc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410fad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0xd0]
cmp ecx, 8
jb 0x410ff7
mov edx, dword [ebp - 0xe4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x410fed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0xe8]
cmp ecx, 8
jb 0x411037
mov edx, dword [ebp - 0xfc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41102d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x100]
cmp ecx, 8
jb 0x411077
mov edx, dword [ebp - 0x114]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41106d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x118]
cmp ecx, 8
jb 0x4110b7
mov edx, dword [ebp - 0x12c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4110ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x130]
cmp ecx, 8
jb 0x4110f7
mov edx, dword [ebp - 0x144]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4110ed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x148]
cmp ecx, 8
jb 0x411137
mov edx, dword [ebp - 0x15c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41112d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x160]
cmp ecx, 8
jb 0x411177
mov edx, dword [ebp - 0x174]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41116d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
add esp, 8
mov ecx, dword [ebp - 0x178]
cmp ecx, 8
jb 0x4111b7
mov edx, dword [ebp - 0x18c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4111ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41125a
push ecx
push edx
call fcn.0054fb04
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.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
call fcn.005549df
push 0x80004005
call fcn.0042f720
call fcn.005549df
call fcn.005549df
call fcn.005549df
int3