Function at 0x10007710
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1001d738
mov eax, dword fs:[0]
push eax
sub esp, 0x78
mov eax, dword [0x100270b0]
xor eax, esp
mov dword [esp + 0x70], eax
push ebx
push esi
push edi
mov eax, dword [0x100270b0]
xor eax, esp
push eax
lea eax, [esp + 0x88]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x1c], ebx
xor eax, eax
mov cl, byte [eax + 0x100217bc]
mov byte [esp + eax + 0x5c], cl
inc eax
test cl, cl
jne 0x10007752
xor eax, eax
mov cl, byte [eax + 0x10022ea8]
mov byte [esp + eax + 0x7c], cl
inc eax
test cl, cl
jne 0x10007763
mov eax, dword [0x10027038]
mov edx, dword [eax + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x5c], 0x10023d00
mov dword [esp + 0x18], edi
call edx
add eax, 0x10
mov dword [edi], eax
mov dword [esp + 0x94], 0
test ebx, ebx
je 0x100077ca
test ebx, 0xffff0000
jne 0x100077ca
movzx esi, bx
push esi
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100077cf
push eax
mov eax, esi
call fcn.10002f40
jmp 0x100077cf
call fcn.10002c40
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x60]
push ecx
mov dword [esp + 0x9c], 0xffffffff
call fcn.10004fb0
mov dword [esp + 0x90], 1
mov ebx, dword [esp + 0x20]
mov eax, ebx
mov byte [esp + 0x24], 0
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10007802
sub eax, edx
sar eax, 1
lea edi, [eax + 1]
push edi
call fcn.1000c3ad
push edi
mov esi, eax
push ebx
push esi
mov dword [esp + 0x38], esi
call fcn.1000d385
add esp, 0x10
mov dword [esp + 0x2c], ebx
mov edi, dword [esp + 0x1c]
mov ecx, edi
mov byte [esp + 0x90], 2
mov eax, esi
sub ecx, esi
mov dl, byte [eax]
mov byte [ecx + eax], dl
inc eax
test dl, dl
jne 0x10007841
lea edx, [esp + 0x34]
mov eax, edi
sub edx, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x10007853
xor eax, eax
nop
mov cl, byte [eax + 0x10022ea8]
mov byte [esp + eax + 0x54], cl
inc eax
test cl, cl
jne 0x10007860
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov ecx, 0x10027038
mov dword [esp + 0x34], 0x10023d00
mov dword [esp + 0x18], esp
mov dword [esp + 0x1c], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.E4CCA0F4C4ECD0A4
mov byte [esp + 0x94], 3
test ecx, 0xffff0000
jne 0x100078c8
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100078d2
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100078d2
mov ebx, str.E4CCA0F4C4ECD0A4
call fcn.10002c40
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x20
mov byte [esp + 0x90], 4
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007948
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x1000793f
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x1000793f
call fcn.10002e20
mov dword [esp + 0x18], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007934
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x18]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007948
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007970
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, 0x100217d4
mov byte [esp + 0x94], 5
test ecx, 0xffff0000
jne 0x100079c1
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100079cb
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100079cb
mov ebx, 0x100217d4
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x24
mov byte [esp + 0x90], 6
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007a41
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10007a38
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10007a38
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007a2d
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007a41
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007a69
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.DBBD91ECB9E4
mov byte [esp + 0x94], 7
test ecx, 0xffff0000
jne 0x10007aba
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10007ac4
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10007ac4
mov ebx, str.DBBD91ECB9E4
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x28
mov byte [esp + 0x90], 8
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007b3a
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10007b31
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10007b31
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007b26
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007b3a
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007b62
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x1c]
lea edi, [esi + 0x2c]
mov ebx, str.LyricsContainer
call fcn.10002c40
lea edi, [esi + 0x30]
mov ebx, str.RYD_Software
call fcn.10002c40
push ecx
mov dword [esi + 0x34], 1
mov dword [esi + 0x38], 0x7a
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.A3865AB082A88C60
mov byte [esp + 0x94], 9
test ecx, 0xffff0000
jne 0x10007bdf
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10007be9
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10007be9
mov ebx, str.A3865AB082A88C60
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov byte [esp + 0x90], 0xa
mov ecx, dword [eax]
mov edi, dword [esi + 0x3c]
lea ebx, [esi + 0x3c]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007c5c
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10007c53
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10007c53
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007c48
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007c5c
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007c84
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.AA865AAA83A2865A
mov byte [esp + 0x94], 0xb
test ecx, 0xffff0000
jne 0x10007cd5
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10007cdf
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10007cdf
mov ebx, str.AA865AAA83A2865A
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x40
mov byte [esp + 0x90], 0xc
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007d55
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10007d4c
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10007d4c
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007d41
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007d55
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007d7d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, 0x10021860
mov byte [esp + 0x94], 0xd
test ecx, 0xffff0000
jne 0x10007dce
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10007dd8
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10007dd8
mov ebx, 0x10021860
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x44
mov byte [esp + 0x90], 0xe
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007e4e
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10007e45
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10007e45
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007e3a
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007e4e
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007e76
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.A68C5AAD94AB866FAE96A68357B293B39C5EBB7FA28A5AA786B49B57B385A29B5AB17FA68A5ABC88A5986BAA86A9865AB282B38B5AA786B3
mov byte [esp + 0x94], 0xf
test ecx, 0xffff0000
jne 0x10007ec7
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10007ed1
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10007ed1
mov ebx, str.A68C5AAD94AB866FAE96A68357B293B39C5EBB7FA28A5AA786B49B57B385A29B5AB17FA68A5ABC88A5986BAA86A9865AB282B38B5AA786B3
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x48
mov byte [esp + 0x90], 0x10
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10007f47
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10007f3e
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10007f3e
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10007f33
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10007f47
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10007f6f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x1c]
push ecx
mov dword [esi + 0x4c], 0x7a
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.D3B890E0BFE2BF91E9BCDBC58BDBB5E2BF94EAB8D6C297DBC1E2BF95DBB8D3C594E9BBD3BD8DE7BCDCC38EE9C2DCBE92DBC1
mov byte [esp + 0x94], 0x11
test ecx, 0xffff0000
jne 0x10007fcb
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10007fd5
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10007fd5
mov ebx, str.D3B890E0BFE2BF91E9BCDBC58BDBB5E2BF94EAB8D6C297DBC1E2BF95DBB8D3C594E9BBD3BD8DE7BCDCC38EE9C2DCBE92DBC1
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov byte [esp + 0x90], 0x12
mov ecx, dword [eax]
mov edi, dword [esi + 0x50]
lea ebx, [esi + 0x50]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008048
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x1000803f
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x1000803f
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008034
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008048
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008070
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x1c]
push ecx
mov dword [esi + 0x54], 0x7a
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.BECF93ECBBB5B99DDB92BEC9A3ECB7DBB99DED95A0C598EEC6D3BF93E8C4D7C88DA8B5BEC58DED
mov byte [esp + 0x94], 0x13
test ecx, 0xffff0000
jne 0x100080cc
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100080d6
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100080d6
mov ebx, str.BECF93ECBBB5B99DDB92BEC9A3ECB7DBB99DED95A0C598EEC6D3BF93E8C4D7C88DA8B5BEC58DED
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov byte [esp + 0x90], 0x14
mov ecx, dword [eax]
mov edi, dword [esi + 0x58]
lea ebx, [esi + 0x58]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008149
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008140
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008140
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008135
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008149
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008171
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x1c]
push ecx
mov dword [esi + 0x5c], 0x7a
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.BECF6DECBBE1B99DDB95E1C598EEC0D3BF93E8B7D7C89EEC
mov byte [esp + 0x94], 0x15
test ecx, 0xffff0000
jne 0x100081cd
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100081d7
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100081d7
mov ebx, str.BECF6DECBBE1B99DDB95E1C598EEC0D3BF93E8B7D7C89EEC
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov byte [esp + 0x90], 0x16
mov ecx, dword [eax]
mov edi, dword [esi + 0x60]
lea ebx, [esi + 0x60]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x1000824a
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008241
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008241
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008236
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x1000824a
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008272
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.DCCA94EEC6
mov byte [esp + 0x94], 0x17
test ecx, 0xffff0000
jne 0x100082c3
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100082cd
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100082cd
mov ebx, str.DCCA94EEC6
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x64
mov byte [esp + 0x90], 0x18
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008343
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x1000833a
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x1000833a
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x1000832f
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008343
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1000836b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.DBCA93EEC6
mov byte [esp + 0x94], 0x19
test ecx, 0xffff0000
jne 0x100083bc
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100083c6
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100083c6
mov ebx, str.DBCA93EEC6
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x68
mov byte [esp + 0x90], 0x1a
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x1000843c
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008433
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008433
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008428
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x1000843c
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008464
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.E7CA9FEEC6
mov byte [esp + 0x94], 0x1b
test ecx, 0xffff0000
jne 0x100084b5
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100084bf
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100084bf
mov ebx, str.E7CA9FEEC6
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x6c
mov byte [esp + 0x90], 0x1c
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008535
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x1000852c
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x1000852c
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008521
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008535
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1000855d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.E8BB9DECC5E5BF99E3C0E5C5
mov byte [esp + 0x94], 0x1d
test ecx, 0xffff0000
jne 0x100085ae
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100085b8
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100085b8
mov ebx, str.E8BB9DECC5E5BF99E3C0E5C5
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x70
mov byte [esp + 0x90], 0x1e
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x1000862e
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008625
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008625
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x1000861a
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x1000862e
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008656
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.DBBA93DEB6
mov byte [esp + 0x94], 0x1f
test ecx, 0xffff0000
jne 0x100086a7
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100086b1
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100086b1
mov ebx, str.DBBA93DEB6
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x74
mov byte [esp + 0x90], 0x20
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008727
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x1000871e
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x1000871e
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008713
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008727
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1000874f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.DBB793DBB3
mov byte [esp + 0x94], 0x21
test ecx, 0xffff0000
jne 0x100087a0
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100087aa
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100087aa
mov ebx, str.DBB793DBB3
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x78
mov byte [esp + 0x90], 0x22
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008820
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008817
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008817
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x1000880c
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008820
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008848
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.EBBA9CEEC4E4CC5BF084E487
mov byte [esp + 0x94], 0x23
test ecx, 0xffff0000
jne 0x10008899
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x100088a3
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x100088a3
mov ebx, str.EBBA9CEEC4E4CC5BF084E487
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x7c
mov byte [esp + 0x90], 0x24
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008919
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008910
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008910
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008905
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008919
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008941
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.E6BE8CE980E2C293E5B4E2C68BDDC0DD8458E8B7D7CA8DE9
mov byte [esp + 0x94], 0x25
test ecx, 0xffff0000
jne 0x10008992
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x1000899c
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x1000899c
mov ebx, str.E6BE8CE980E2C293E5B4E2C68BDDC0DD8458E8B7D7CA8DE9
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
sub ebx, 0xffffff80
mov byte [esp + 0x90], 0x26
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008a12
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008a09
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008a09
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x100089fe
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008a12
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008a3a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.DCCC8CE680E2C293E5B4E2C68BDDC0DD8458E8B7D7CA8DE6
mov byte [esp + 0x94], 0x27
test ecx, 0xffff0000
jne 0x10008a8b
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10008a95
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10008a95
mov ebx, str.DCCC8CE680E2C293E5B4E2C68BDDC0DD8458E8B7D7CA8DE6
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x84
mov byte [esp + 0x90], 0x28
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008b0e
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008b05
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008b05
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008afa
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008b0e
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008b36
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.E4CA94F380E5BA96E8BCE5C999E8C0A0C4A3DFC6D7C4A3
mov byte [esp + 0x94], 0x29
test ecx, 0xffff0000
jne 0x10008b87
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10008b91
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10008b91
mov ebx, str.E4CA94F380E5BA96E8BCE5C999E8C0A0C4A3DFC6D7C4A3
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x88
mov byte [esp + 0x90], 0x2a
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008c0a
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008c01
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008c01
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008bf6
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008c0a
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008c32
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.BEC89CDDC5C7999EECC4C7AB9ADEB7E4849DDFCAEABB8EDD
mov byte [esp + 0x94], 0x2b
test ecx, 0xffff0000
jne 0x10008c83
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10008c8d
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10008c8d
mov ebx, str.BEC89CDDC5C7999EECC4C7AB9ADEB7E4849DDFCAEABB8EDD
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x8c
mov byte [esp + 0x90], 0x2c
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008d06
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008cfd
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008cfd
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008cf2
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008d06
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008d2e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.BECF9EECBBDBB99DEE95E1BF98EEC2D3BF8DE8B7D7C89EECBFE2BF58DFCBEABBA2C6B3
mov byte [esp + 0x94], 0x2d
test ecx, 0xffff0000
jne 0x10008d7f
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10008d89
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10008d89
mov ebx, str.BECF9EECBBDBB99DEE95E1BF98EEC2D3BF8DE8B7D7C89EECBFE2BF58DFCBEABBA2C6B3
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x90
mov byte [esp + 0x90], 0x2e
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008e02
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008df9
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008df9
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008dee
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008e02
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008e2a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [0x10027038]
mov eax, dword [edx + 0xc]
push ecx
mov edi, esp
mov dword [esp + 0x18], esp
mov ecx, 0x10027038
mov dword [esp + 0x18], edi
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, str.A1C98BDE81DECB98DEBBE0C29DEE80D3C29FE681E6BF98E8B6D785A2A8C5DACA97E7BEA1C296
mov byte [esp + 0x94], 0x2f
test ecx, 0xffff0000
jne 0x10008e7b
mov edx, ecx
movzx ebx, dx
push ebx
call fcn.100031e0
add esp, 4
test eax, eax
je 0x10008e85
push eax
mov eax, ebx
call fcn.10002f40
jmp 0x10008e85
mov ebx, str.A1C98BDE81DECB98DEBBE0C29DEE80D3C29FE681E6BF98E8B6D785A2A8C5DACA97E7BEA1C296
call fcn.10002c40
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0x9c], 2
call fcn.10004fb0
mov ebx, dword [esp + 0x1c]
add ebx, 0x94
mov byte [esp + 0x90], 0x30
mov ecx, dword [eax]
mov edi, dword [ebx]
lea eax, [ecx - 0x10]
sub edi, 0x10
cmp eax, edi
je 0x10008efe
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x10008ef5
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x10008ef5
call fcn.10002e20
mov dword [esp + 0x14], eax
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
test eax, eax
jg 0x10008eea
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [esp + 0x14]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x10008efe
mov edi, dword [ecx - 0xc]
push ecx
call fcn.10002d10
mov byte [esp + 0x90], 2
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008f26
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x28]
push ecx
call fcn.1000c441
mov dword [esp + 0x94], 0xffffffff
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
add esp, 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10008f5e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x88]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x70]
xor ecx, esp
call fcn.1000bb4c
mov esp, ebp
pop ebp
ret