Function at 0x53d0f0
Capabilities:
Check for time delay via gettickcount

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 0x63c9c0
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0x658
mov eax, dword [0x6a6040]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x571], cl
mov dword [ebp - 0x578], 0
mov edi, dword [0x6ac16c]
xor esi, esi
mov dword [ebp - 0x588], edi
mov dword [ebp - 0x594], edi
mov dword [ebp - 0x590], esi
mov byte [ebp - 0x58c], 0
mov dword [ebp - 4], 1
push dword [0x6ac1e0]
lea ecx, [ebp - 0x570]
call fcn.005e19c0
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0xffffffffffffffff
mov dword [ebp - 0x28], esi
push dword [edi]
mov dword [ebp - 0x5bc], eax
call eax
cmp eax, 0x80
jne 0x53d19e
mov dword [edi + 8], esi
jmp 0x53d1a2
test eax, eax
jne 0x53d1b6
inc dword [edi + 0xc]
mov esi, 1
inc dword [edi + 8]
inc dword [edi + 4]
mov dword [ebp - 0x590], esi
lea ecx, [ebp - 0x570]
call fcn.005e1cb0
mov ecx, dword [0x6ac684]
test ecx, ecx
je 0x53d204
lea eax, [ebp - 0x5e0]
add ecx, 0x347
push eax
call fcn.005c0ab0
mov dword [ebp - method.CMaaXmlElement.virtual_0], vtable.CMaaXmlNode.0
mov ecx, dword [eax + 4]
mov dword [ebp - 0x5b4], ecx
mov ecx, 3
mov dword [eax + 4], 0
lea eax, [ebp - 0x5b4]
jmp 0x53d223
mov dword [ebp - method.CMaaXmlElement.virtual_0], vtable.CMaaXmlNode.0
lea eax, [ebp - 0x5d0]
mov dword [ebp - 0x5d0], 0
mov ecx, 4
mov edx, dword [eax]
mov dword [ebp - 0x57c], ecx
mov dword [ebp - method.CMaaXmlElement.virtual_0], vtable.CMaaXmlNode.0
mov dword [ebp - 0x5c0], edx
mov dword [ebp - 0x660], edx
mov dword [eax], 0
test cl, 4
je 0x53d286
mov edx, dword [ebp - 0x5d0]
and ecx, 0xfffffffb
mov dword [ebp - 0x57c], ecx
test edx, edx
je 0x53d286
or edi, 0xffffffff
mov eax, edi
lock xadd dword [edx + 8], eax
dec eax
jne 0x53d289
mov ecx, edx
call fcn.005baee0
mov ecx, dword [ebp - 0x5d0]
call fcn.005bae00
mov ecx, dword [ebp - 0x57c]
jmp 0x53d289
or edi, 0xffffffff
test cl, 2
je 0x53d2c3
mov edx, dword [ebp - 0x5b4]
and ecx, 0xfffffffd
mov dword [ebp - 0x57c], ecx
test edx, edx
je 0x53d2c3
mov eax, edi
lock xadd dword [edx + 8], eax
dec eax
jne 0x53d2c3
mov ecx, edx
call fcn.005baee0
mov ecx, dword [ebp - 0x5b4]
call fcn.005bae00
mov ecx, dword [ebp - 0x57c]
test cl, 1
je 0x53d311
and ecx, 0xfffffffe
mov dword [ebp - method.CMaaXmlElement.virtual_0], vtable.CMaaXmlNode.0
mov dword [ebp - 0x57c], ecx
mov ecx, dword [ebp - 0x5dc]
test ecx, ecx
je 0x53d311
mov eax, edi
lock xadd dword [ecx + 8], eax
dec eax
jne 0x53d311
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x5c8], eax
test eax, eax
je 0x53d311
mov ecx, eax
call fcn.005baee0
mov ecx, dword [ebp - 0x5c8]
call fcn.005bae00
mov eax, dword [0x6ad048]
mov ecx, dword [ebp - 0x5c0]
mov dword [ebp - 0x5a1], ecx
test eax, eax
je 0x53d331
lock inc dword [eax]
mov dword [ebp - 0x59d], eax
jmp 0x53d33b
mov dword [ebp - 0x59d], 0
mov byte [ebp - 0x599], 0
test ecx, ecx
je 0x53d34a
lock inc dword [ecx + 8]
lea eax, [ebp - 0x5d4]
push eax
lea ecx, [ebp - 0x5a1]
call fcn.005c4f70
mov ecx, dword [ebp - 0x5a1]
test ecx, ecx
je 0x53d380
mov eax, edi
lock xadd dword [ecx + 8], eax
dec eax
jne 0x53d380
call fcn.005baee0
mov ecx, dword [ebp - 0x5a1]
call fcn.005bae00
mov ecx, dword [ebp - 0x59d]
test ecx, ecx
je 0x53d399
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53d399
push ecx
call fcn.005a47b0
sub esp, 8
lea ecx, [ebp - 0x570]
call fcn.005e1bf0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x40
jge 0x53d3e6
mov dword [ebp + ecx*8 - 0x528], eax
mov dword [ebp + ecx*8 - 0x524], edx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x128], str.FindElement
call fcn.005ed6f0
mov ecx, dword [ebp - 0x28]
mov dword [ebp + ecx*8 - 0x328], eax
mov dword [ebp + ecx*8 - 0x324], edx
inc dword [ebp - 0x28]
test esi, esi
jg 0x53d3f3
cmp dword [0x6ac6c4], 0
jne 0x53d405
mov ecx, dword [ebp - 0x588]
dec esi
mov dword [ebp - 0x590], esi
call fcn.005e0810
mov byte [ebp - 4], 4
cmp dword [ebp - 0x5c0], 0
je 0x53e65b
cmp byte [ebp - 0x571], 0
jne 0x53d436
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x6b0d44]
cmp eax, 0xea60
jl 0x53e65b
mov eax, dword [ebp - 0x588]
push 0xffffffffffffffff
push dword [eax]
call dword [ebp - 0x5bc]
cmp eax, 0x80
jne 0x53d45c
mov eax, dword [ebp - 0x588]
mov dword [eax + 8], 0
jmp 0x53d466
test eax, eax
mov eax, dword [ebp - 0x588]
jne 0x53d476
inc dword [eax + 0xc]
inc dword [eax + 8]
inc dword [eax + 4]
inc esi
mov dword [ebp - 0x590], esi
cmp byte [0x6b0d48], 0
je 0x53d4c7
test esi, esi
jg 0x53d48c
cmp dword [0x6ac6c4], 0
jne 0x53d49a
dec esi
mov ecx, eax
mov dword [ebp - 0x590], esi
call fcn.005e0810
mov esi, dword [ebp - 0x5d0]
test esi, esi
je 0x53d4bc
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53d4bc
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov esi, dword [ebp - 0x5c0]
jmp 0x53e687
mov byte [0x6b0d48], 1
test esi, esi
jg 0x53d4db
cmp dword [0x6ac6c4], 0
jne 0x53d4e9
dec esi
mov ecx, eax
mov dword [ebp - 0x590], esi
call fcn.005e0810
mov byte [ebp - 4], 4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0x594]
mov dword [0x6b0d44], eax
call fcn.0041d970
lea ecx, [ebp - 0x570]
call fcn.005e1cb0
mov esi, dword [0x6a7028]
cmp esi, 0x6a7028
je 0x53d707
test esi, esi
je 0x53d707
nop dword [eax + eax]
mov eax, dword [esi]
xor ecx, ecx
cmp eax, 0x6a7028
cmove eax, ecx
mov ecx, dword [esi + 8]
sub esp, 8
mov dword [ebp - 0x5c8], eax
mov eax, esp
add ecx, 0x253
push 0
push ecx
push 0x6ac928
mov dword [eax], vtable.CMaaXmlNode.0
lea ecx, [ebp - 0x5d4]
mov dword [eax + 4], 0
lea eax, [ebp - 0x5b8]
push 0x6ad04c
push eax
call fcn.005bf520
mov ecx, dword [ebp - 0x5b4]
test ecx, ecx
je 0x53d603
mov eax, dword [0x6ad054]
mov dword [ebp - 0x5a1], ecx
test eax, eax
je 0x53d5a0
lock inc dword [eax]
mov dword [ebp - 0x59d], eax
jmp 0x53d5aa
mov dword [ebp - 0x59d], 0
mov byte [ebp - 0x599], 0
test ecx, ecx
je 0x53d5b9
lock inc dword [ecx + 8]
or dword [ebp - 0x57c], 8
lea ecx, [ebp - 0x5a1]
call fcn.005c4e90
mov edx, dword [0x6ac908]
mov ecx, dword [eax]
cmp ecx, edx
je 0x53d5fa
test ecx, ecx
je 0x53d603
test edx, edx
je 0x53d603
mov eax, dword [ecx + 4]
cmp eax, dword [edx + 4]
jne 0x53d603
mov edx, dword [edx + 0xc]
mov ecx, dword [ecx + 0xc]
push eax
call fcn.005a4c60
add esp, 4
test al, al
je 0x53d603
mov byte [ebp - 0x571], 0
jmp 0x53d60a
mov byte [ebp - 0x571], 1
mov eax, dword [ebp - 0x57c]
test al, 8
je 0x53d65a
mov ecx, dword [ebp - 0x5a1]
and eax, 0xfffffff7
mov dword [ebp - 0x57c], eax
test ecx, ecx
je 0x53d641
mov eax, edi
lock xadd dword [ecx + 8], eax
dec eax
jne 0x53d641
call fcn.005baee0
mov ecx, dword [ebp - 0x5a1]
call fcn.005bae00
mov ecx, dword [ebp - 0x59d]
test ecx, ecx
je 0x53d65a
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53d65a
push ecx
call fcn.005a47b0
cmp byte [ebp - 0x571], 0
je 0x53d6c1
mov eax, dword [esi + 8]
add eax, 0x253
push eax
push str.closing__S_CC_server_connection:_not_in_the_config_n
push 0x6a6e70
call fcn.0042abc0
mov ecx, dword [esi + 8]
add esp, 0xc
add ecx, 0x40289
push 1
push 0
push 1
call fcn.005d79f0
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x53d69d
mov eax, dword [esi]
mov dword [ecx], eax
mov ecx, dword [esi]
test ecx, ecx
je 0x53d6a9
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
push 0xc
push esi
mov dword [esi + 4], 0
mov dword [esi], 0
call fcn.00606a78
add esp, 8
mov ecx, dword [ebp - 0x5b4]
mov dword [ebp - method.CMaaXmlElement.virtual_0], vtable.CMaaXmlNode.0
test ecx, ecx
je 0x53d6f7
mov eax, edi
lock xadd dword [ecx + 8], eax
dec eax
jne 0x53d6f7
mov esi, dword [ebp - 0x5b4]
test esi, esi
je 0x53d6f7
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov eax, dword [ebp - 0x5c8]
mov esi, eax
test eax, eax
jne 0x53d530
sub esp, 8
lea ecx, [ebp - 0x570]
call fcn.005e1bf0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x40
jge 0x53d754
mov dword [ebp + ecx*8 - 0x528], eax
mov dword [ebp + ecx*8 - 0x524], edx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x128], str.Remove_unused
call fcn.005ed6f0
mov ecx, dword [ebp - 0x28]
mov dword [ebp + ecx*8 - 0x328], eax
mov dword [ebp + ecx*8 - 0x324], edx
inc dword [ebp - 0x28]
mov eax, dword [ebp - 0x590]
mov cl, byte [ebp - 0x58c]
mov dword [ebp - 0x584], eax
mov byte [ebp - 0x572], cl
test eax, eax
jg 0x53d78b
test cl, cl
jne 0x53d78b
cmp dword [0x6ac6c4], 0
je 0x53d78b
mov eax, dword [ebp - 0x594]
mov dword [ebp - 0x580], eax
jmp 0x53d7ab
dec eax
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
mov eax, dword [ebp - 0x594]
mov ecx, eax
mov dword [ebp - 0x580], eax
call fcn.005e0810
lea ecx, [ebp - 0x570]
call fcn.005e1cb0
mov esi, dword [ebp - 0x5d0]
mov eax, dword [0x6ad04c]
mov dword [ebp - 0x5c8], esi
mov dword [ebp - 0x5a1], esi
test eax, eax
je 0x53d7dc
lock inc dword [eax]
mov dword [ebp - 0x59d], eax
jmp 0x53d7e6
mov dword [ebp - 0x59d], 0
mov byte [ebp - 0x599], 0
test esi, esi
je 0x53d7f5
lock inc dword [esi + 8]
lea eax, [ebp - 0x5e0]
push eax
lea ecx, [ebp - 0x5a1]
call fcn.005c4f70
mov byte [ebp - 4], 9
mov esi, dword [ebp - 0x5a1]
test esi, esi
je 0x53d82d
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53d82d
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x59d]
test ecx, ecx
je 0x53d846
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53d846
push ecx
call fcn.005a47b0
mov edx, dword [ebp - 0x5dc]
mov dword [ebp - 0x57c], edx
test edx, edx
je 0x53e599
mov eax, dword [0x6ad054]
mov dword [ebp - 0x601], edx
test eax, eax
je 0x53d874
lock inc dword [eax]
mov dword [ebp - 0x5fd], eax
jmp 0x53d87e
mov dword [ebp - 0x5fd], 0
mov byte [ebp - 0x5f9], 0
lock inc dword [edx + 8]
lea ecx, [ebp - 0x601]
call fcn.005c4e90
mov edx, dword [0x6ac908]
mov ecx, dword [eax]
cmp ecx, edx
jne 0x53d8a9
mov byte [ebp - 0x571], 0
jmp 0x53d8da
test ecx, ecx
je 0x53d8d3
test edx, edx
je 0x53d8d3
mov eax, dword [ecx + 4]
cmp eax, dword [edx + 4]
jne 0x53d8d3
mov edx, dword [edx + 0xc]
mov ecx, dword [ecx + 0xc]
push eax
call fcn.005a4c60
add esp, 4
mov byte [ebp - 0x571], 0
test al, al
jne 0x53d8da
mov byte [ebp - 0x571], 1
mov esi, dword [ebp - 0x601]
test esi, esi
je 0x53d8fc
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53d8fc
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x5fd]
test ecx, ecx
je 0x53d915
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53d915
push ecx
call fcn.005a47b0
cmp byte [ebp - 0x571], 0
jne 0x53e4bb
mov eax, dword [0x6ac928]
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x637], ecx
test eax, eax
je 0x53d942
lock inc dword [eax]
mov dword [ebp - 0x633], eax
jmp 0x53d94c
mov dword [ebp - 0x633], 0
mov byte [ebp - 0x62f], 0
lock inc dword [ecx + 8]
lea eax, [ebp - 0x588]
push eax
lea ecx, [ebp - 0x637]
call fcn.005c4f00
mov esi, dword [ebp - 0x637]
test esi, esi
je 0x53d98b
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53d98b
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x633]
test ecx, ecx
je 0x53d9a4
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53d9a4
push ecx
call fcn.005a47b0
mov eax, dword [0x6ad058]
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x5ac], 0
mov dword [ebp - 0x5ec], 0x2717
mov dword [ebp - 0x5e8], 0
mov dword [ebp - 0x60a], ecx
test eax, eax
je 0x53d9e2
lock inc dword [eax]
mov dword [ebp - 0x606], eax
jmp 0x53d9ec
mov dword [ebp - 0x606], 0
mov byte [ebp - 0x602], 0
lock inc dword [ecx + 8]
lea eax, [ebp - 0x5f8]
push eax
lea ecx, [ebp - 0x60a]
call fcn.005c4f00
mov esi, dword [ebp - 0x60a]
test esi, esi
je 0x53da2b
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53da2b
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x606]
test ecx, ecx
je 0x53da44
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53da44
push ecx
call fcn.005a47b0
mov eax, dword [ebp - 0x5f8]
test eax, eax
je 0x53da53
mov ecx, dword [eax + 0xc]
jmp 0x53da58
mov ecx, 0x651f68
push 0x654c3c
lea edx, [ebp - 0x5ac]
call fcn.005d2610
mov edx, eax
add esp, 4
test edx, edx
jle 0x53dab7
mov ecx, dword [ebp - 0x5f8]
test ecx, ecx
je 0x53da87
cmp edx, dword [ecx + 4]
jge 0x53da87
mov eax, dword [ecx + 0xc]
add eax, edx
jmp 0x53da8c
mov eax, 0x651f40
cmp byte [eax], 0
je 0x53dab7
test ecx, ecx
je 0x53da9a
mov eax, dword [ecx + 0xc]
jmp 0x53da9f
mov eax, 0x651f68
lea ecx, [ebp - 0x5ec]
inc edx
push ecx
add eax, edx
push 0x654184
push eax
call fcn.0041abe0
add esp, 0xc
mov eax, dword [0x6ad05c]
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x613], ecx
test eax, eax
je 0x53dad7
lock inc dword [eax]
mov dword [ebp - 0x60f], eax
jmp 0x53dae1
mov dword [ebp - 0x60f], 0
mov byte [ebp - 0x60b], 0
lock inc dword [ecx + 8]
lea eax, [ebp - 0x644]
push eax
lea ecx, [ebp - 0x613]
call fcn.005c4f00
mov esi, dword [ebp - 0x613]
test esi, esi
je 0x53db20
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53db20
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x60f]
test ecx, ecx
je 0x53db39
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53db39
push ecx
call fcn.005a47b0
mov eax, dword [ebp - 0x644]
mov dword [ebp - 0x64c], eax
test eax, eax
je 0x53db4e
mov ecx, dword [eax + 0xc]
jmp 0x53db53
mov ecx, 0x651f68
push 0x654c3c
lea edx, [ebp - 0x5e8]
call fcn.005d2610
mov eax, dword [0x6ad060]
add esp, 4
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x5b0], 0
mov dword [ebp - 0x5e4], 0
mov dword [ebp - 0x61c], ecx
test eax, eax
je 0x53db9a
lock inc dword [eax]
mov dword [ebp - 0x618], eax
jmp 0x53dba4
mov dword [ebp - 0x618], 0
mov byte [ebp - 0x614], 0
lock inc dword [ecx + 8]
lea eax, [ebp - 0x640]
push eax
lea ecx, [ebp - 0x61c]
call fcn.005c4f00
mov esi, dword [ebp - 0x61c]
test esi, esi
je 0x53dbe3
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53dbe3
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x618]
test ecx, ecx
je 0x53dbfc
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53dbfc
push ecx
call fcn.005a47b0
mov eax, dword [0x6ad064]
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x625], ecx
test eax, eax
je 0x53dc1c
lock inc dword [eax]
mov dword [ebp - 0x621], eax
jmp 0x53dc26
mov dword [ebp - 0x621], 0
mov byte [ebp - 0x61d], 0
lock inc dword [ecx + 8]
lea eax, [ebp - 0x5f0]
push eax
lea ecx, [ebp - 0x625]
call fcn.005c4f00
mov esi, dword [ebp - 0x625]
test esi, esi
je 0x53dc65
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53dc65
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x621]
test ecx, ecx
je 0x53dc7e
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53dc7e
push ecx
call fcn.005a47b0
mov eax, dword [0x6ad068]
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x62e], ecx
test eax, eax
je 0x53dc9e
lock inc dword [eax]
mov dword [ebp - 0x62a], eax
jmp 0x53dca8
mov dword [ebp - 0x62a], 0
mov byte [ebp - 0x626], 0
lock inc dword [ecx + 8]
lea eax, [ebp - 0x5a8]
push eax
lea ecx, [ebp - 0x62e]
call fcn.005c4f00
mov esi, dword [ebp - 0x62e]
test esi, esi
je 0x53dce7
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53dce7
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov ecx, dword [ebp - 0x62a]
test ecx, ecx
je 0x53dd00
mov eax, edi
lock xadd dword [ecx], eax
dec eax
jne 0x53dd00
push ecx
call fcn.005a47b0
mov eax, dword [ebp - 0x640]
mov dword [ebp - 0x63c], eax
test eax, eax
je 0x53dd15
mov ecx, dword [eax + 0xc]
jmp 0x53dd1a
mov ecx, 0x651f68
lea edx, [ebp - 0x5b0]
call fcn.005d2570
test eax, eax
jne 0x53e415
mov eax, dword [ebp - 0x5ac]
mov dword [ebp - 0x5cc], eax
test eax, eax
je 0x53e415
mov eax, dword [ebp - 0x5b0]
mov dword [ebp - 0x648], eax
test eax, eax
je 0x53e415
mov edi, dword [ebp - 0x5f0]
test edi, edi
je 0x53dd64
mov ecx, dword [edi + 0xc]
jmp 0x53dd69
mov ecx, 0x651f68
lea edx, [ebp - 0x5e4]
call fcn.005d2570
mov esi, dword [ebp - 0x580]
push 0xffffffffffffffff
push dword [esi]
call dword [ebp - 0x5bc]
cmp eax, 0x80
jne 0x53dd94
mov dword [esi + 8], 0
jmp 0x53dd98
test eax, eax
jne 0x53ddb4
mov eax, dword [ebp - 0x584]
inc dword [esi + 0xc]
inc dword [esi + 8]
inc dword [esi + 4]
inc eax
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
mov esi, dword [0x6a7028]
mov dword [ebp - 0x5ac], esi
cmp esi, 0x6a7028
jne 0x53de71
mov dword [ebp - 0x5b0], 0
mov esi, dword [ebp - 0x5a8]
mov eax, dword [0x6ac680]
test eax, eax
je 0x53dfd7
cmp dword [eax + 0xc48044], 0
je 0x53dfd7
lea eax, [ebp - 0x588]
push eax
push str.creating_new__S_CC_server_connection_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
mov byte [ebp - 0x571], 1
mov dword [ebp - 0x5c4], 0
mov dword [ebp - 0x5d8], 0
mov byte [ebp - 4], 0x10
push 0x44
call fcn.00606edf
mov ecx, eax
add esp, 4
mov dword [ebp - 0x668], ecx
mov byte [ebp - 4], 0x11
mov eax, dword [0x6ac680]
push dword [eax + 0xc48044]
call fcn.005d7110
mov dword [ebp - 0x5ac], eax
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x5c4], eax
test eax, eax
je 0x53e6c6
jmp 0x53e092
mov dword [ebp - 0x5b0], esi
test esi, esi
je 0x53ddd6
mov eax, dword [ebp - 0x588]
lea ecx, [eax + 4]
add eax, 0xc
mov dword [ebp - 0x5c4], ecx
mov dword [ebp - 0x5d8], eax
nop word [eax + eax]
mov edx, dword [esi + 8]
mov eax, dword [ebp - 0x588]
mov ecx, dword [edx + 0x253]
cmp ecx, eax
je 0x53df07
test ecx, ecx
je 0x53dee0
test eax, eax
je 0x53dee0
mov edx, dword [ebp - 0x5c4]
mov eax, dword [ecx + 4]
cmp eax, dword [edx]
jne 0x53dee0
mov ecx, dword [ecx + 0xc]
push eax
mov eax, dword [ebp - 0x5d8]
mov edx, dword [eax]
call fcn.005a4c60
add esp, 4
test al, al
jne 0x53df04
mov eax, dword [esi]
mov esi, eax
mov dword [ebp - 0x5ac], eax
cmp eax, 0x6a7028
je 0x53ddcc
mov dword [ebp - 0x5b0], esi
test esi, esi
jne 0x53dea0
jmp 0x53ddd6
mov edx, dword [esi + 8]
mov eax, dword [ebp - 0x5cc]
cmp dword [edx + 0x4026b], eax
jne 0x53e015
movzx eax, word [edx + 0x4026f]
cmp eax, dword [ebp - 0x5ec]
jne 0x53e015
mov eax, dword [ebp - 0x648]
cmp dword [edx + 0x40275], eax
jne 0x53e015
mov eax, dword [edx + 0x40271]
cmp eax, dword [ebp - 0x5e8]
jne 0x53e015
mov eax, dword [edx + 0x40279]
cmp eax, dword [ebp - 0x5e4]
jne 0x53e015
mov eax, dword [esi + 8]
mov esi, dword [ebp - 0x5a8]
mov dword [ebp - 0x5c4], eax
mov ecx, dword [eax + 0x4027d]
cmp ecx, esi
je 0x53dfb0
test ecx, ecx
je 0x53e01b
test esi, esi
je 0x53e01b
mov eax, dword [ecx + 4]
cmp eax, dword [esi + 4]
jne 0x53e01b
mov edx, dword [esi + 0xc]
mov ecx, dword [ecx + 0xc]
push eax
call fcn.005a4c60
add esp, 4
test al, al
je 0x53e01b
mov eax, dword [ebp - 0x5c4]
mov cl, byte [eax + 0x250]
test cl, cl
jne 0x53dfc6
cmp byte [eax + 0x252], cl
jne 0x53e01b
test cl, cl
je 0x53dfd7
push 1
push 0
lea ecx, [eax + 0x402eb]
push 1
call fcn.005d79f0
mov ecx, dword [ebp - 0x580]
mov dl, byte [ebp - 0x572]
mov eax, dword [ebp - 0x584]
test eax, eax
jg 0x53dffe
test dl, dl
jne 0x53dffe
cmp dword [0x6ac6c4], 0
jne 0x53e421
dec eax
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
call fcn.005e0810
jmp 0x53e421
mov esi, dword [ebp - 0x5a8]
lea eax, [ebp - 0x588]
push eax
push str.closing__S_CC_server_connection:_data_mismach_n
push 0x6a6e70
call fcn.0042abc0
mov ecx, dword [ebp - 0x5ac]
add esp, 0xc
mov ecx, dword [ecx + 8]
push 1
push 0
add ecx, 0x40289
push 1
call fcn.005d79f0
mov ecx, dword [ebp - 0x5ac]
mov edx, dword [ecx + 4]
test edx, edx
je 0x53e05f
mov eax, dword [ecx]
mov dword [edx], eax
mov edx, dword [ecx]
test edx, edx
je 0x53e06b
mov eax, dword [ecx + 4]
mov dword [edx + 4], eax
push 0xc
push ecx
mov dword [ecx + 4], 0
mov dword [ecx], 0
call fcn.00606a78
add esp, 8
mov dword [ebp - 0x5b0], 0
jmp 0x53dddc
mov eax, dword [ebp - 0x584]
test eax, eax
jg 0x53e0ae
cmp byte [ebp - 0x572], 0
jne 0x53e0ae
cmp dword [0x6ac6c4], 0
jne 0x53e0c6
mov ecx, dword [ebp - 0x580]
dec eax
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
call fcn.005e0810
push 0x4034d
mov byte [ebp - 4], 0x10
mov byte [ebp - 0x571], 0
call fcn.00606edf
add esp, 4
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x66c], eax
mov ecx, dword [ebp - 0x5ac]
push ecx
mov dword [ebp - 0x598], esp
mov eax, dword [ecx + 0x3c]
mov ecx, esp
mov dword [ebp - 0x654], eax
mov eax, dword [ebp - 0x588]
test eax, eax
je 0x53e111
lock inc dword [eax]
jmp 0x53e113
xor eax, eax
push ecx
mov byte [ebp - 4], 0x14
mov dword [ecx], eax
mov dword [ebp - 0x5f4], esp
call fcn.005a45d0
mov dword [ebp - 0x5b4], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x53e141
push str.:10007
mov ecx, eax
call fcn.005a5480
jmp 0x53e143
xor eax, eax
mov ecx, dword [ebp - 0x5f4]
mov byte [ebp - 4], 0x14
mov dword [ecx], eax
test eax, eax
je 0x53e16d
cmp dword [eax + 0xc], 0
jne 0x53e16d
push ecx
mov ecx, eax
call fcn.005a47b0
mov eax, dword [ebp - 0x5f4]
mov dword [eax], 0
push ecx
mov eax, esp
test esi, esi
je 0x53e17b
lock inc dword [esi]
mov dword [eax], esi
jmp 0x53e181
mov dword [eax], 0
push dword [ebp - 0x5e4]
mov ecx, dword [ebp - 0x578]
push dword [ebp - 0x648]
mov byte [ebp - 4], 0x13
push dword [ebp - 0x5e8]
push dword [ebp - 0x5ec]
push dword [ebp - 0x5cc]
push dword [ebp - 0x654]
call fcn.004bcfd0
push 0xc
mov dword [ebp - 0x578], eax
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x5d8], eax
call fcn.00606edf
mov dword [ebp - 0x598], eax
add esp, 4
mov ecx, dword [ebp - 0x578]
mov dword [ebp - 0x5cc], eax
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], ecx
mov dword [ebp - 0x5b0], eax
test ecx, ecx
je 0x53e707
mov eax, dword [ebp - 0x580]
push 0xffffffffffffffff
push dword [eax]
call dword [ebp - 0x5bc]
mov edx, dword [ebp - 0x580]
cmp eax, 0x80
jne 0x53e224
mov dword [edx + 8], 0
jmp 0x53e228
test eax, eax
jne 0x53e244
mov eax, dword [ebp - 0x584]
inc dword [edx + 0xc]
inc dword [edx + 8]
inc dword [edx + 4]
inc eax
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
mov ecx, dword [ebp - 0x5cc]
mov eax, dword [0x6a702c]
mov dword [ecx + 4], eax
mov dword [ecx], 0x6a7028
mov dword [0x6a702c], ecx
mov eax, dword [ecx + 4]
mov dword [eax], ecx
mov eax, dword [ebp - 0x584]
test eax, eax
jg 0x53e27f
cmp byte [ebp - 0x572], 0
jne 0x53e27f
cmp dword [0x6ac6c4], 0
jne 0x53e293
dec eax
mov ecx, edx
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
call fcn.005e0810
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x5ac]
lea eax, [ecx + 0x10]
push eax
push 0
push ecx
push 0x5e0ec0
push 0
push 0
call fcn.0061408e
mov ecx, dword [ebp - 0x5ac]
add esp, 0x18
mov dword [ebp - 0x578], eax
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x580]
push 0xffffffffffffffff
push dword [eax]
call dword [ebp - 0x5bc]
cmp eax, 0x80
jne 0x53e2ea
mov eax, dword [ebp - 0x580]
mov dword [eax + 8], 0
jmp 0x53e2f4
test eax, eax
jne 0x53e310
mov eax, dword [ebp - 0x580]
inc dword [eax + 0xc]
inc dword [eax + 8]
inc dword [eax + 4]
mov eax, dword [ebp - 0x584]
inc eax
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x590], eax
cmp dword [ebp - 0x578], 0xffffffff
mov byte [ebp - 0x571], 1
je 0x53e6e1
mov dword [ebp - 4], 0xf
jmp 0x53dfd7
mov edi, dword [ebp - 0x5f0]
mov esi, dword [ebp - 0x5a8]
test esi, esi
je 0x53e437
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
jne 0x53e437
push ecx
mov ecx, esi
call fcn.005a47b0
or esi, 0xffffffff
test edi, edi
je 0x53e44f
mov eax, esi
lock xadd dword [edi], eax
dec eax
jne 0x53e44f
push ecx
mov ecx, edi
call fcn.005a47b0
mov eax, dword [ebp - 0x63c]
test eax, eax
je 0x53e46a
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
jne 0x53e46a
push ecx
mov ecx, eax
call fcn.005a47b0
mov eax, dword [ebp - 0x64c]
test eax, eax
je 0x53e485
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
jne 0x53e485
push ecx
mov ecx, eax
call fcn.005a47b0
mov ecx, dword [ebp - 0x5f8]
test ecx, ecx
je 0x53e49e
mov eax, esi
lock xadd dword [ecx], eax
dec eax
jne 0x53e49e
push ecx
call fcn.005a47b0
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x588]
test ecx, ecx
je 0x53e4bb
mov eax, esi
lock xadd dword [ecx], eax
dec eax
jne 0x53e4bb
push ecx
call fcn.005a47b0
lea eax, [ebp - 0x5a0]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.005bbdd0
mov edx, dword [ebp - 0x57c]
or edi, 0xffffffff
mov ecx, dword [eax + 4]
cmp edx, ecx
je 0x53e516
mov esi, edx
mov dword [eax + 4], 0
mov edx, ecx
mov dword [ebp - 0x57c], edx
mov dword [ebp - 0x5dc], edx
test esi, esi
je 0x53e516
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53e516
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov edx, dword [ebp - 0x57c]
test edx, edx
je 0x53e522
lock inc dword [edx + 8]
mov esi, edx
jmp 0x53e524
xor esi, esi
mov ecx, dword [ebp - 0x59c]
mov dword [ebp - method.CMaaXmlElement.virtual_0], vtable.CMaaXmlNode.0
test ecx, ecx
je 0x53e56a
mov eax, edi
lock xadd dword [ecx + 8], eax
dec eax
jne 0x53e56a
mov eax, dword [ebp - 0x59c]
mov dword [ebp - 0x578], eax
test eax, eax
je 0x53e56a
mov ecx, eax
call fcn.005baee0
mov ecx, dword [ebp - 0x578]
call fcn.005bae00
mov edx, dword [ebp - 0x57c]
test esi, esi
je 0x53d852
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53d852
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov edx, dword [ebp - 0x57c]
jmp 0x53d852
sub esp, 8
lea ecx, [ebp - 0x570]
call fcn.005e1bf0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x40
jge 0x53e5e6
mov dword [ebp + ecx*8 - 0x528], eax
mov dword [ebp + ecx*8 - 0x524], edx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x128], str.miscellaneous_starts
call fcn.005ed6f0
mov ecx, dword [ebp - 0x28]
mov dword [ebp + ecx*8 - 0x328], eax
mov dword [ebp + ecx*8 - 0x324], edx
inc dword [ebp - 0x28]
mov esi, dword [ebp - 0x580]
push 0xffffffffffffffff
push dword [esi]
call dword [ebp - 0x5bc]
cmp eax, 0x80
jne 0x53e606
mov dword [esi + 8], 0
jmp 0x53e60a
test eax, eax
jne 0x53e622
mov eax, dword [ebp - 0x584]
inc dword [esi + 0xc]
inc dword [esi + 8]
inc dword [esi + 4]
inc eax
mov dword [ebp - 0x590], eax
jmp 0x53e628
mov eax, dword [ebp - 0x584]
mov byte [0x6b0d48], 0
test eax, eax
jg 0x53e645
cmp byte [ebp - 0x572], 0
jne 0x53e645
cmp dword [0x6ac6c4], 0
jne 0x53e653
dec eax
mov ecx, esi
mov dword [ebp - 0x590], eax
call fcn.005e0810
mov esi, dword [ebp - 0x5c8]
jmp 0x53e661
mov esi, dword [ebp - 0x5d0]
test esi, esi
je 0x53e67d
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x53e67d
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
mov esi, dword [ebp - 0x5c0]
test esi, esi
je 0x53e69d
lock xadd dword [esi + 8], edi
dec edi
jne 0x53e69d
mov ecx, esi
call fcn.005baee0
mov ecx, esi
call fcn.005bae00
lea ecx, [ebp - 0x594]
call fcn.0041d9b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00606a47
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x6a3c10
lea eax, [ebp - 0x650]
mov dword [ebp - 0x650], 1
push eax
call fcn.006089ec
mov ecx, dword [ebp - 0x5cc]
call fcn.00443f70
push 0x6a3c10
lea eax, [ebp - 0x658]
mov dword [ebp - 0x658], 3
push eax
call fcn.006089ec
push 0x6a3c10
lea eax, [ebp - 0x65c]
mov dword [ebp - 0x65c], 2
push eax
call fcn.006089ec
int3