Function at 0x463a80
Capabilities:
Hash data with md5

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53649d
mov eax, dword fs:[0]
push eax
sub esp, 0x170
mov eax, dword [0x58a06c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], 0
test ecx, ecx
je 0x463ae5
test eax, eax
jne 0x463ae9
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x4646ed
jmp 0x463af0
test eax, eax
jne 0x463ad4
xor al, al
jmp 0x4646d0
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x4c], eax
mov dword [ebp - 4], 0
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x4646f7
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov dword [ebp - 0x17c], eax
add eax, 0x10
mov dword [ebp - 0x68], eax
mov byte [ebp - 4], 1
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x464701
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 2
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x46470b
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 3
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x464715
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x40], eax
mov byte [ebp - 4], 4
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x46471f
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 5
push eax
call fcn.00514f22
push dword [ebp - 0x60]
lea eax, [ebp - 0x48]
push dword [ebp - 0x64]
push str._lld
push eax
call fcn.0046eb90
add esp, 0x14
mov byte [ebp - 4], 6
mov edi, dword [ebp - 0x48]
mov ecx, dword [edi - 0x10]
lea eax, [edi - 0x10]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x178], eax
test ecx, ecx
je 0x463bf8
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
mov ecx, eax
test ecx, ecx
jne 0x463c10
call fcn.00401d90
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x10]
call eax
mov ecx, eax
test ecx, ecx
je 0x464729
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
push 6
push str.pcbpcb
push dword [edi - 0xc]
add eax, 0x10
mov dword [ebp - 0x16c], 2
mov edx, edi
mov dword [ebp - 0x150], eax
lea ecx, [ebp - 0x150]
call fcn.0043cc80
mov esi, dword [ebp - 0x150]
add esp, 0xc
cmp dword [esi - 4], 1
jle 0x463c64
push dword [esi - 0xc]
lea ecx, [ebp - 0x150]
call fcn.00406520
mov esi, dword [ebp - 0x150]
mov ecx, esi
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x154], 0xf
mov byte [ebp - 0x168], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463c90
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x168]
call fcn.00405490
mov byte [ebp - 4], 7
lea eax, [ebp - 0x168]
cmp dword [ebp - 0x154], 0x10
lea ecx, [ebp - 0xd4]
push dword [ebp - 0x158]
cmovae eax, dword [ebp - 0x168]
push eax
mov byte [ebp - 0x6c], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xd4], 0x67452301
mov dword [ebp - 0xd0], 0xefcdab89
mov dword [ebp - 0xcc], 0x98badcfe
mov dword [ebp - 0xc8], 0x10325476
call fcn.00433830
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0xd4]
call fcn.00434000
mov dword [ebp - 0x16c], 6
mov byte [ebp - 4], 8
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
cmovae eax, dword [ebp - 0x28]
mov dword [ebp - 0x14c], eax
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x464733
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x38]
push dword [ebp - 0x14c]
call fcn.004061e0
test al, al
jne 0x463da7
mov edx, dword [ebp - 0x14c]
test edx, edx
jne 0x463d7e
xor ecx, ecx
jmp 0x463d9d
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x14c], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463d90
sub ecx, dword [ebp - 0x14c]
push ecx
push edx
lea ecx, [ebp - 0x38]
call fcn.004062c0
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x463ddf
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x463dd5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46473d
push edx
push ecx
call fcn.0050057d
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x154]
cmp edx, 0x10
jb 0x463e2f
mov ecx, dword [ebp - 0x168]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x463e25
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46473d
push edx
push ecx
call fcn.0050057d
add esp, 8
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x154], 0xf
mov byte [ebp - 0x168], 0
mov dword [ebp - 0x14c], 4
mov byte [ebp - 4], 0xd
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x463e70
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ecx + 0x28]
call fcn.0045be40
mov esi, eax
test esi, esi
jne 0x463e85
xor ecx, ecx
jmp 0x463e99
mov ecx, esi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463e90
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x40]
call fcn.004062c0
push esi
call fcn.005005bb
mov ecx, dword [ebp - 0x174]
add esp, 4
call fcn.0045be40
mov esi, eax
test esi, esi
jne 0x463ec1
xor ecx, ecx
jmp 0x463ecf
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463ec6
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x44]
call fcn.004062c0
push esi
call fcn.005005bb
mov ecx, dword [ebp - 0x170]
add esp, 4
call fcn.0045be40
mov esi, eax
test esi, esi
jne 0x463ef7
xor ecx, ecx
jmp 0x463f09
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463f00
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x3c]
call fcn.004062c0
push esi
call fcn.005005bb
mov edx, dword [ebp - 0x34]
lea ecx, [ebp - 0x170]
push str._index_api_cancelShare
lea edx, [edx + 0x38]
call fcn.0040a2c0
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0xe
mov ecx, dword [esi]
cmp dword [ecx - 4], 1
jle 0x463f4c
push dword [ecx - 0xc]
mov ecx, esi
call fcn.0040b2e0
mov ecx, dword [esi]
call fcn.0045be40
mov esi, eax
test esi, esi
jne 0x463f5b
xor ecx, ecx
jmp 0x463f69
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463f60
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4c]
call fcn.004062c0
push esi
call fcn.005005bb
mov byte [ebp - 4], 0xd
add esp, 4
mov edx, dword [ebp - 0x170]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x463f9e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xorps xmm0, xmm0
movlpd qword [ebp - 0x30], xmm0
push 0x40
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
call fcn.0050058b
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x28]
push 9
mov dword [ebp - 0x28], 0
push str.timestamp
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00405490
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x30]
call fcn.0046e910
mov edx, edi
lea esi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x464010
sub edx, esi
mov ecx, eax
push edx
push edi
call fcn.00405490
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x46405a
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x464050
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x464742
push edx
push ecx
call fcn.0050057d
add esp, 8
push 9
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push str.signature
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00405490
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x30]
call fcn.0046e910
mov esi, eax
mov eax, dword [ebp - 0x38]
mov edx, eax
lea edi, [edx + 1]
nop dword [eax]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x4640a0
sub edx, edi
mov ecx, esi
push edx
push eax
call fcn.00405490
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x4640ea
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4640e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x464747
push edx
push ecx
call fcn.0050057d
add esp, 8
push 4
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push 0x550e3c
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00405490
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x30]
call fcn.0046e910
mov esi, eax
mov eax, dword [ebp - 0x40]
mov edx, eax
lea edi, [edx + 1]
nop dword [eax]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x464130
sub edx, edi
mov ecx, esi
push edx
push eax
call fcn.00405490
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x46417a
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x464170
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46474c
push edx
push ecx
call fcn.0050057d
add esp, 8
mov esi, dword [ebp - 0x44]
cmp dword [esi - 0xc], 0
je 0x46420a
push 7
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push str.markIds
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00405490
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x30]
call fcn.0046e910
mov edx, esi
lea edi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x4641c4
sub edx, edi
mov ecx, eax
push edx
push esi
call fcn.00405490
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x464266
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46425c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x464751
jmp 0x46425c
mov esi, dword [ebp - 0x3c]
cmp dword [esi - 0xc], 0
je 0x464266
push 7
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push str.celUrls
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00405490
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x30]
call fcn.0046e910
mov edx, esi
lea edi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x464250
jmp 0x4641cb
push edx
push ecx
call fcn.0050057d
add esp, 8
push 4
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push str.lang
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00405490
mov byte [ebp - 4], 0x15
call fcn.00434980
mov esi, eax
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0x28]
push eax
call fcn.0046e910
cmp eax, esi
je 0x4642be
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x4642b3
mov ecx, dword [esi]
push dword [esi + 0x10]
push ecx
mov ecx, eax
call fcn.00405490
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x4642f6
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4642ec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x464751
push edx
push ecx
call fcn.0050057d
add esp, 8
mov edi, dword [ebp - 0x4c]
mov ecx, edi
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x154], 0xf
mov byte [ebp - 0x168], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x464323
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x168]
call fcn.00405490
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x16
push eax
lea edx, [ebp - 0x168]
lea ecx, [ebp - 0x28]
call fcn.0043c9f0
add esp, 4
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x154]
cmp edx, 0x10
jb 0x464390
mov ecx, dword [ebp - 0x168]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x464386
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x464751
push edx
push ecx
call fcn.0050057d
add esp, 8
push 0x70
lea eax, [ebp - 0x144]
mov dword [ebp - 0x158], 0
push 0
push eax
mov dword [ebp - 0x154], 0xf
mov byte [ebp - 0x168], 0
call fcn.00504db0
add esp, 0xc
lea ecx, [ebp - 0x144]
call fcn.0042afe0
xorps xmm0, xmm0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
lea ecx, [ebp - 0x11c]
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00405490
cmp dword [ebp - 0x108], 0x10
lea ecx, [ebp - 0x11c]
mov eax, dword [ebp - 0x10c]
lea edx, [ebp - 0x5c]
cmovae ecx, dword [ebp - 0x11c]
push ecx
add eax, ecx
push edx
push eax
push ecx
lea ecx, [ebp - 0x144]
call fcn.0042b0d0
test al, al
je 0x46459a
push ecx
push str.code
lea ecx, [ebp - 0x5c]
call fcn.0042ed20
cmp byte [eax + 8], 1
jne 0x4644aa
mov eax, dword [ebp - 0x158]
and eax, 0xffffff01
mov dword [ebp - 0x154], 0
or eax, 1
mov dword [ebp - 0x160], 1
mov dword [ebp - 0x158], eax
push ecx
mov eax, 5
mov byte [ebp - 4], 0x1c
push str.code
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x16c], eax
call fcn.0042ed20
lea ecx, [ebp - 0x160]
push ecx
mov ecx, eax
call fcn.0042e5e0
mov byte [ebp - 0x145], 1
test al, al
jne 0x4644b1
mov byte [ebp - 0x145], 0
mov dword [ebp - 4], 0x1b
test byte [ebp - 0x14c], 1
je 0x4644cc
lea ecx, [ebp - 0x160]
call fcn.0042e430
cmp byte [ebp - 0x145], 0
je 0x4644e1
mov byte [ebp - 0x145], 1
jmp 0x4645a1
push ecx
push 0x54f634
lea ecx, [ebp - 0x5c]
call fcn.0042ed20
cmp byte [eax + 8], 0
je 0x46459a
call fcn.00401d90
mov ecx, eax
test ecx, ecx
je 0x464756
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x34], eax
push ecx
push 0x54f634
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x1d
call fcn.0042ed20
mov ecx, dword [eax]
call fcn.0045bed0
mov esi, eax
test esi, esi
jne 0x464538
xor ecx, ecx
jmp 0x46454f
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x464540
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x34]
call fcn.0040b410
push esi
call fcn.005005bb
add esp, 4
push 0
push 0
call fcn.0047fd54
mov esi, dword [ebp - 0x34]
mov edx, esi
mov ecx, dword [eax + 0xa8]
call fcn.004299c0
add esp, 8
mov byte [ebp - 4], 0x1b
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x46459a
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 0x145], 0
lea ecx, [ebp - 0x5c]
call fcn.0042e430
lea ecx, [ebp - 0x144]
call fcn.0040e3d0
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x4645ec
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4645e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x464751
push edx
push ecx
call fcn.0050057d
add esp, 8
lea eax, [ebp - 0x30]
push eax
mov ecx, eax
call fcn.0046ecb0
mov byte [ebp - 4], 5
or esi, 0xffffffff
mov edx, dword [ebp - 0x38]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x464618
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, esi
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x464636
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 3
mov eax, esi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x464654
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, esi
mov edx, dword [ebp - 0x44]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x464672
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x178]
mov eax, esi
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x464690
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x17c]
mov eax, esi
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4646ae
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
add edi, 0xfffffff0
lock xadd dword [edi + 0xc], esi
dec esi
test esi, esi
jg 0x4646ca
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov al, byte [ebp - 0x145]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005000f2
mov esp, ebp
pop ebp
ret 8
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
push 0x80004005
call fcn.00404aa0
call fcn.00508673
call fcn.00508673
call fcn.00508673
call fcn.00508673
call fcn.00508673
push 0x80004005
call fcn.00404aa0
int3