Function at 0x46c82c
Capabilities:
Enumerate pe sections
Terminate process

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xfffffe80
mov eax, 0x69d2ab
xor edx, edx
push ebx
push esi
push edi
mov esi, dword [ebp + 8]
mov dword [ebp - 0x1c8], 0x6b83e8
mov dword [ebp - 0x1c4], esp
mov dword [ebp - 0x1cc], eax
mov word [ebp - 0x1c0], 0
mov dword [ebp - 0x1b4], edx
mov ecx, dword fs:[0]
mov dword [ebp - 0x1d0], ecx
lea eax, [ebp - 0x1d0]
mov dword fs:[0], eax
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x1dc], edx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x1e0], ecx
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x1d8], eax
mov edx, dword [ebp - 0x1e0]
and edx, 0xff00
shr edx, 8
mov byte [ebp - 0x1d1], dl
mov cl, byte [ebp - 0x1e0]
and cl, 0xff
mov byte [ebp - 0x1d2], cl
mov al, byte [ebp - 0x1d1]
cmp al, 1
je 0x46c8e7
mov edx, dword [ebp - 0x1d0]
mov dword fs:[0], edx
mov eax, edx
jmp 0x46fd05
lea ecx, [ebp - 0x1d8]
push ecx
lea eax, [esi + 0x68]
push eax
lea edx, [ebp - 0x978]
push edx
call fcn.0045ecfc
add esp, 0xc
mov ecx, dword [esi + 0x8c]
mov dword [ebp - 0x1e4], ecx
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x980], eax
mov edx, dword [ebp - 0x980]
mov ecx, dword [ebp - 0x970]
cmp edx, ecx
sete al
and eax, 1
test al, al
jne 0x46c944
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x10]
mov eax, dword [ebp - 0x1d8]
cmp ecx, eax
je 0x46c958
mov edx, dword [ebp - 0x1d0]
mov dword fs:[0], edx
mov eax, edx
jmp 0x46fd05
mov cl, byte [ebp - 0x1d2]
test cl, cl
je 0x46ec27
mov eax, dword [ebp - 0x970]
lea edx, [ebp - 0x1f4]
add eax, 0x38
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x1e8], eax
mov word [ebp - 0x1c0], 8
push edx
push 0x6b6010
push ecx
call fcn.0069a6ec
add esp, 0xc
inc dword [ebp - 0x1b4]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x1ec]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
push ecx
mov eax, dword [ebp - 0x1ec]
mov edx, dword [eax + 8]
push edx
mov ecx, dword [ebp - 0x1e8]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 4]
push edx
push 0
mov ecx, dword [ebp - 0x1e8]
push ecx
call fcn.0069b5b8
add esp, 0x14
test eax, eax
jne 0x46c9e2
mov al, 1
jmp 0x46c9e4
xor eax, eax
push eax
dec dword [ebp - 0x1b4]
mov edx, dword [ebp - 0x90]
test edx, edx
je 0x46cab5
mov ecx, dword [ebp - 0x90]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x46ca5b
mov edx, dword [ebp - 0x90]
add edx, 0xfffffff4
mov dword [ebp - 0x1f8], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x1f8]
cmp ecx, eax
je 0x46ca52
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x1f8]
cmp edx, ecx
je 0x46ca4b
mov eax, dword [ebp - 0x1f8]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x1f8]
mov ecx, dword [edx]
inc ecx
jmp 0x46ca57
mov ecx, 1
jmp 0x46ca57
mov ecx, 1
test ecx, ecx
jne 0x46cab5
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff4
mov dword [ebp - 0x1fc], eax
mov edx, dword [ebp - 0x90]
add edx, 0xfffffff4
mov dword [ebp - 0x200], edx
mov eax, dword [ebp - 0x200]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x204], edx
lea eax, [ebp - 0x98]
mov ecx, dword [ebp - 0x204]
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x208], eax
mov edx, dword [ebp - 0x208]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc50], ecx
pop eax
test al, al
je 0x46caf7
push 0x15e
lea edx, [ebp - 0xc48]
push edx
push 0x801
mov ecx, dword [esi + 0x28]
push ecx
call sub.USER32.DLL_LoadStringA
mov eax, dword [ebp - 0x970]
movzx edx, word [eax + 0x1c]
push edx
lea ecx, [ebp - 0xc48]
push ecx
lea eax, [ebp - 0xae8]
push eax
call fcn.006a0ad0
add esp, 0xc
jmp 0x46cb3c
push 0x15e
lea edx, [ebp - 0xc48]
push edx
push 0x813
mov ecx, dword [esi + 0x28]
push ecx
call sub.USER32.DLL_LoadStringA
mov eax, dword [ebp - 0x970]
movzx edx, word [eax + 0x1c]
push edx
lea edx, [ebp - 0xc48]
mov ecx, dword [ebp - 0x970]
mov eax, dword [ecx + 0x40]
lea ecx, [ebp - 0xae8]
push eax
push edx
push ecx
call fcn.006a0ad0
add esp, 0x10
mov eax, dword [ebp - 0x970]
lea ecx, [ebp - 0xae8]
mov edx, dword [eax + 0x20]
push edx
push ecx
push 2
call fcn.005fb108
add esp, 0xc
lea eax, [ebp - 0xae8]
push 0xffffffffffffffff
push eax
push 0x12
call fcn.005fb108
add esp, 0xc
jmp 0x46cb79
lea edx, [ebp - 0x978]
push edx
call fcn.00448418
pop ecx
mov ecx, dword [ebp - 0x970]
mov al, byte [ecx + 0x1f]
test al, al
jne 0x46cbaa
mov eax, dword [esi + 0x8c]
mov dword [ebp - 0xc60], eax
mov edx, dword [ebp - 0xc60]
mov ecx, dword [ebp - 0x970]
cmp edx, ecx
setne al
and eax, 1
test al, al
jne 0x46cb6c
mov edx, dword [esi + 0x8c]
mov dword [ebp - 0x20c], edx
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0xc70], ecx
mov eax, dword [ebp - 0xc70]
mov edx, dword [ebp - 0x970]
cmp eax, edx
sete cl
and ecx, 1
test cl, cl
jne 0x46cbed
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x10]
mov ecx, dword [ebp - 0x1d8]
cmp edx, ecx
je 0x46cbfe
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
jmp 0x46fd05
mov edx, dword [ebp - 0x970]
xor eax, eax
mov ecx, dword [edx + 0x10]
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x214], eax
mov edx, dword [ebp - 0x970]
lea ecx, [ebp - 0x224]
add edx, 0x38
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x218], edx
mov word [ebp - 0x1c0], 0x20
push ecx
push 0x6b6018
push eax
call fcn.0069a6ec
add esp, 0xc
inc dword [ebp - 0x1b4]
mov dword [ebp - 0x21c], eax
mov edx, dword [ebp - 0x21c]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 4]
push eax
mov edx, dword [ebp - 0x21c]
mov ecx, dword [edx + 8]
push ecx
mov eax, dword [ebp - 0x218]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
push ecx
push 0
mov eax, dword [ebp - 0x218]
push eax
call fcn.0069b5b8
add esp, 0x14
test eax, eax
je 0x46cc91
mov dl, 1
jmp 0x46cc93
xor edx, edx
push edx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0xa0]
test eax, eax
je 0x46cd64
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x46cd0a
mov edx, dword [ebp - 0xa0]
add edx, 0xfffffff4
mov dword [ebp - 0x228], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x228]
cmp ecx, eax
je 0x46cd01
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x228]
cmp edx, ecx
je 0x46ccfa
mov eax, dword [ebp - 0x228]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x228]
mov ecx, dword [edx]
inc ecx
jmp 0x46cd06
mov ecx, 1
jmp 0x46cd06
mov ecx, 1
test ecx, ecx
jne 0x46cd64
mov eax, dword [ebp - 0xa0]
add eax, 0xfffffff4
mov dword [ebp - 0x22c], eax
mov edx, dword [ebp - 0xa0]
add edx, 0xfffffff4
mov dword [ebp - 0x230], edx
mov eax, dword [ebp - 0x230]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x234], edx
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x234]
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 0x238], eax
mov edx, dword [ebp - 0x238]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc80], ecx
pop eax
test al, al
je 0x46cd78
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x40]
mov dword [ebp - 0x214], ecx
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0xac], edx
mov ecx, dword [ebp - 0xac]
test ecx, ecx
je 0x46cdb4
mov word [ebp - 0x1c0], 0x44
push 3
mov eax, dword [ebp - 0xac]
push eax
call fcn.005899b4
mov word [ebp - 0x1c0], 0x38
add esp, 8
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x20]
push ecx
push 0
mov eax, dword [ebp - 0x970]
mov dx, word [eax + 0x1c]
push edx
mov ecx, dword [ebp - 0x214]
push ecx
mov eax, dword [ebp - 0x970]
add eax, 0x18
push eax
push esi
call fcn.0044bc04
add esp, 0x18
test al, al
je 0x46cf8f
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x20]
push ecx
push 1
mov eax, dword [ebp - 0x970]
mov dx, word [eax + 0x1c]
push edx
mov ecx, dword [ebp - 0x214]
push ecx
mov eax, dword [ebp - 0x970]
add eax, 0x18
push eax
push esi
call fcn.0044bc04
add esp, 0x18
test al, al
je 0x46cf8f
push 0x15e
lea edx, [ebp - 0xc48]
push edx
push 0x812
mov ecx, dword [esi + 0x28]
push ecx
call sub.USER32.DLL_LoadStringA
mov eax, dword [ebp - 0x970]
lea ecx, [esi + 0x68]
add eax, 0x10
mov dword [ebp - 0x23c], eax
lea eax, [ebp - 0xc98]
mov edx, dword [ebp - 0x23c]
push edx
push ecx
push eax
call fcn.0045ecfc
add esp, 0xc
xor edx, edx
mov dword [ebp - 0x240], edx
jmp 0x46cf4e
push esi
lea esi, [ebp - 0xc98]
lea edi, [ebp - 0x978]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop esi
lea eax, [ebp - 0xc98]
push eax
call fcn.00448418
mov edx, dword [ebp - 0x970]
pop ecx
movzx ecx, word [edx + 0x1c]
push ecx
lea ecx, [ebp - 0xc48]
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x40]
lea eax, [ebp - 0xae8]
push edx
push ecx
push eax
call fcn.006a0ad0
mov edx, dword [ebp - 0x970]
add esp, 0x10
lea eax, [ebp - 0xae8]
mov ecx, dword [edx + 0x20]
push ecx
push eax
push 2
call fcn.005fb108
add esp, 0xc
lea edx, [ebp - 0xae8]
push 0xffffffffffffffff
push edx
push 0x12
call fcn.005fb108
mov ecx, dword [ebp - 0x978]
add esp, 0xc
mov dword [ebp - 0xca8], ecx
add esp, 0xfffffff0
mov ecx, dword [ebp - 0x974]
mov dword [ebp - 0xca4], ecx
mov eax, dword [ebp - 0x970]
mov dword [ebp - 0xca0], eax
lea eax, [esi + 0x68]
mov edx, dword [ebp - 0xca8]
mov dword [esp], edx
mov edx, dword [ebp - 0xca4]
mov dword [esp + 4], edx
lea edx, [ebp - 0xcb8]
mov ecx, dword [ebp - 0xca0]
mov dword [esp + 8], ecx
push eax
push edx
call fcn.00449efc
add esp, 0x18
inc dword [ebp - 0x240]
mov ecx, dword [ebp - 0x970]
add ecx, 0x10
mov dword [ebp - 0x244], ecx
mov eax, dword [ebp - 0x244]
push eax
lea edx, [esi + 0x68]
push edx
call fcn.0045ed4c
add esp, 8
mov ecx, dword [ebp - 0x240]
cmp eax, ecx
jae 0x46ce76
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
jmp 0x46fd05
mov word [ebp - 0x1c0], 0x5c
mov edx, dword [ebp - 0x970]
add edx, 0x18
mov dword [ebp - 0x248], edx
mov ecx, dword [ebp - 0x248]
mov eax, dword [ecx]
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 0x248]
mov cx, word [edx + 4]
mov word [ebp - 0x84], cx
mov eax, dword [ebp - 0x248]
mov dl, byte [eax + 6]
mov byte [ebp - 0x82], dl
mov ecx, dword [ebp - 0x248]
mov al, byte [ecx + 7]
mov byte [ebp - 0x81], al
mov edx, dword [ebp - 0x248]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x80], ecx
mov eax, dword [ebp - 0x248]
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x7c], edx
mov ecx, dword [ebp - 0x248]
mov al, byte [ecx + 0x10]
mov byte [ebp - 0x78], al
mov edx, dword [ebp - 0x248]
mov cl, byte [edx + 0x11]
mov byte [ebp - 0x77], cl
mov eax, dword [ebp - 0x248]
mov dl, byte [eax + 0x12]
mov byte [ebp - 0x76], dl
mov ecx, dword [ebp - 0x248]
mov al, byte [ecx + 0x13]
mov byte [ebp - 0x75], al
mov edx, dword [ebp - 0x248]
mov cl, byte [edx + 0x14]
mov byte [ebp - 0x74], cl
mov eax, dword [ebp - 0x248]
mov dl, byte [eax + 0x15]
mov byte [ebp - 0x73], dl
mov ecx, dword [ebp - 0x248]
mov al, byte [ecx + 0x16]
mov byte [ebp - 0x72], al
mov edx, dword [ebp - 0x248]
mov cl, byte [edx + 0x17]
mov byte [ebp - 0x71], cl
mov eax, dword [ebp - 0x248]
mov dl, byte [eax + 0x18]
xor eax, eax
mov byte [ebp - 0x70], dl
mov ecx, dword [ebp - 0x248]
add ecx, 0x20
mov dword [ebp - 0x24c], ecx
mov dword [ebp - 0x250], eax
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x60], edx
mov ecx, dword [ebp - 0x24c]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x46d0f9
mov ecx, dword [ebp - 0x24c]
mov eax, dword [ecx + 8]
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x254], eax
mov edx, dword [ebp - 0x254]
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x258], ecx
mov eax, dword [ebp - 0x258]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xcc0], edx
mov ecx, dword [ebp - 0x60]
add ecx, 0xfffffff4
mov dword [ebp - 0x25c], ecx
mov edx, dword [ebp - 0x25c]
cmp eax, edx
je 0x46d19c
mov ecx, dword [ebp - 0x25c]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46d19c
mov eax, dword [ebp - 0x24c]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x260], ecx
mov eax, dword [ebp - 0x260]
push eax
mov edx, dword [ebp - 0x260]
push edx
lea ecx, [ebp - 0x68]
push ecx
call fcn.0069a874
mov dword [ebp - 0x268], eax
add esp, 0xc
mov eax, dword [ebp - 0x268]
lea ecx, [ebp - 0x68]
add eax, 0xc
mov dword [ebp - 0x264], eax
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x26c], ecx
mov eax, dword [ebp - 0x26c]
mov edx, dword [eax + 8]
mov dword [ebp - 0xcd0], edx
mov ecx, dword [ebp - 0x260]
mov dword [ebp - 0x270], ecx
mov eax, dword [ebp - 0x24c]
mov edx, dword [eax + 8]
mov dword [ebp - 0x274], edx
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x278], ecx
mov eax, dword [ebp - 0x270]
push eax
mov edx, dword [ebp - 0x274]
push edx
mov ecx, dword [ebp - 0x278]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor edx, edx
mov eax, dword [ebp - 0x248]
add eax, 0x30
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x280], edx
mov ecx, dword [ebp - 0x280]
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x27c]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x46d233
mov eax, dword [ebp - 0x27c]
mov edx, dword [eax + 8]
lea eax, [ebp - 0x58]
mov dword [ebp - 0x284], edx
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x288], eax
mov edx, dword [ebp - 0x288]
mov ecx, dword [edx + 8]
mov edx, 0x6ff36c
mov dword [ebp - 0xce0], ecx
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff4
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x28c]
cmp edx, ecx
je 0x46d2d6
mov eax, dword [ebp - 0x28c]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46d2d6
mov edx, dword [ebp - 0x27c]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x290], eax
mov edx, dword [ebp - 0x290]
push edx
mov ecx, dword [ebp - 0x290]
push ecx
lea eax, [ebp - 0x58]
push eax
call fcn.0069a874
mov dword [ebp - 0x298], eax
add esp, 0xc
mov edx, dword [ebp - 0x298]
lea eax, [ebp - 0x58]
add edx, 0xc
mov dword [ebp - 0x294], edx
mov ecx, dword [ebp - 0x294]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x29c], eax
mov edx, dword [ebp - 0x29c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xcf0], ecx
mov eax, dword [ebp - 0x290]
mov dword [ebp - 0x2a0], eax
mov edx, dword [ebp - 0x27c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x2a4], ecx
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x2a8], eax
mov edx, dword [ebp - 0x2a0]
push edx
mov ecx, dword [ebp - 0x2a4]
push ecx
mov eax, dword [ebp - 0x2a8]
push eax
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor ecx, ecx
mov edx, dword [ebp - 0x248]
add edx, 0x40
mov dword [ebp - 0x2ac], edx
mov dword [ebp - 0x2b0], ecx
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x2ac]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x46d36d
mov edx, dword [ebp - 0x2ac]
mov ecx, dword [edx + 8]
lea edx, [ebp - 0x48]
mov dword [ebp - 0x2b4], ecx
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x2b8], edx
mov ecx, dword [ebp - 0x2b8]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0xd00], eax
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff4
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x2bc]
cmp ecx, eax
je 0x46d410
mov edx, dword [ebp - 0x2bc]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46d410
mov ecx, dword [ebp - 0x2ac]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 4]
mov dword [ebp - 0x2c0], edx
mov ecx, dword [ebp - 0x2c0]
push ecx
mov eax, dword [ebp - 0x2c0]
push eax
lea edx, [ebp - 0x48]
push edx
call fcn.0069a874
mov dword [ebp - 0x2c8], eax
add esp, 0xc
mov ecx, dword [ebp - 0x2c8]
lea edx, [ebp - 0x48]
add ecx, 0xc
mov dword [ebp - 0x2c4], ecx
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x2cc], edx
mov ecx, dword [ebp - 0x2cc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd10], eax
mov edx, dword [ebp - 0x2c0]
mov dword [ebp - 0x2d0], edx
mov ecx, dword [ebp - 0x2ac]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x2d4], eax
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x2d8], edx
mov ecx, dword [ebp - 0x2d0]
push ecx
mov eax, dword [ebp - 0x2d4]
push eax
mov edx, dword [ebp - 0x2d8]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor eax, eax
mov ecx, dword [ebp - 0x248]
add ecx, 0x50
mov dword [ebp - 0x2dc], ecx
mov dword [ebp - 0x2e0], eax
mov edx, dword [ebp - 0x2e0]
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x2dc]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x46d4a7
mov ecx, dword [ebp - 0x2dc]
mov eax, dword [ecx + 8]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x2e4], eax
mov edx, dword [ebp - 0x2e4]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2e8], ecx
mov eax, dword [ebp - 0x2e8]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xd20], edx
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff4
mov dword [ebp - 0x2ec], ecx
mov edx, dword [ebp - 0x2ec]
cmp eax, edx
je 0x46d54a
mov ecx, dword [ebp - 0x2ec]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46d54a
mov eax, dword [ebp - 0x2dc]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x2f0], ecx
mov eax, dword [ebp - 0x2f0]
push eax
mov edx, dword [ebp - 0x2f0]
push edx
lea ecx, [ebp - 0x38]
push ecx
call fcn.0069a874
mov dword [ebp - 0x2f8], eax
add esp, 0xc
mov eax, dword [ebp - 0x2f8]
lea ecx, [ebp - 0x38]
add eax, 0xc
mov dword [ebp - 0x2f4], eax
mov edx, dword [ebp - 0x2f4]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2fc], ecx
mov eax, dword [ebp - 0x2fc]
mov edx, dword [eax + 8]
mov dword [ebp - 0xd30], edx
mov ecx, dword [ebp - 0x2f0]
mov dword [ebp - 0x300], ecx
mov eax, dword [ebp - 0x2dc]
mov edx, dword [eax + 8]
mov dword [ebp - 0x304], edx
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x308], ecx
mov eax, dword [ebp - 0x300]
push eax
mov edx, dword [ebp - 0x304]
push edx
mov ecx, dword [ebp - 0x308]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x248]
mov dl, byte [eax + 0x60]
mov byte [ebp - 0x28], dl
inc dword [ebp - 0x1b4]
add esp, 0xfffffff0
mov word [ebp - 0x1c0], 0x50
mov ecx, dword [ebp - 0x978]
mov dword [ebp - 0xd48], ecx
mov ecx, dword [ebp - 0x974]
mov dword [ebp - 0xd44], ecx
mov eax, dword [ebp - 0x970]
mov dword [ebp - 0xd40], eax
lea eax, [esi + 0x68]
mov edx, dword [ebp - 0xd48]
mov dword [esp], edx
mov edx, dword [ebp - 0xd44]
mov dword [esp + 4], edx
lea edx, [ebp - 0xd58]
mov ecx, dword [ebp - 0xd40]
mov dword [esp + 8], ecx
push eax
push edx
call fcn.00449efc
add esp, 0x18
mov ecx, dword [ebp - 0x88]
test ecx, ecx
je 0x46e912
mov word [ebp - 0x1c0], 0x98
mov eax, dword [ebp - 0x88]
mov edx, dword [eax + 4]
mov dword [ebp - 0x310], edx
mov ecx, dword [ebp - 0x310]
mov dword [ebp - 0x11c], ecx
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x114], eax
mov dx, word [ebp - 0x84]
mov word [ebp - 0x110], dx
mov cl, byte [ebp - 0x82]
mov byte [ebp - 0x10e], cl
mov al, byte [ebp - 0x81]
mov byte [ebp - 0x10d], al
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x10c], edx
mov ecx, dword [ebp - 0x7c]
mov dword [ebp - 0x108], ecx
mov al, byte [ebp - 0x78]
mov byte [ebp - 0x104], al
mov dl, byte [ebp - 0x77]
mov byte [ebp - 0x103], dl
mov cl, byte [ebp - 0x76]
mov byte [ebp - 0x102], cl
mov al, byte [ebp - 0x75]
mov byte [ebp - 0x101], al
mov dl, byte [ebp - 0x74]
mov byte [ebp - 0x100], dl
mov cl, byte [ebp - 0x73]
mov byte [ebp - 0xff], cl
mov al, byte [ebp - 0x72]
mov byte [ebp - 0xfe], al
xor eax, eax
mov dl, byte [ebp - 0x71]
mov byte [ebp - 0xfd], dl
mov cl, byte [ebp - 0x70]
mov byte [ebp - 0xfc], cl
mov dword [ebp - 0x314], eax
mov edx, dword [ebp - 0x314]
mov dword [ebp - 0xec], edx
mov word [ebp - 0x1c0], 0xa4
mov ecx, dword [ebp - 0x60]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x46d714
mov edx, dword [ebp - 0x60]
lea eax, [ebp - 0xf4]
mov dword [ebp - 0x318], edx
mov ecx, dword [ebp - 0x318]
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0x31c], eax
mov edx, dword [ebp - 0x31c]
mov ecx, dword [edx + 8]
mov edx, 0x6ff36c
mov dword [ebp - 0xd60], ecx
mov eax, dword [ebp - 0xec]
add eax, 0xfffffff4
mov dword [ebp - 0x320], eax
mov ecx, dword [ebp - 0x320]
cmp edx, ecx
je 0x46d7b7
mov eax, dword [ebp - 0x320]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46d7b7
mov edx, dword [ebp - 0x60]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x324], ecx
mov eax, dword [ebp - 0x324]
push eax
mov edx, dword [ebp - 0x324]
push edx
lea ecx, [ebp - 0xf4]
push ecx
call fcn.0069a874
mov dword [ebp - 0x32c], eax
add esp, 0xc
mov eax, dword [ebp - 0x32c]
lea ecx, [ebp - 0xf4]
add eax, 0xc
mov dword [ebp - 0x328], eax
mov edx, dword [ebp - 0x328]
mov dword [ebp - 0xec], edx
mov dword [ebp - 0x330], ecx
mov eax, dword [ebp - 0x330]
mov edx, dword [eax + 8]
mov dword [ebp - 0xd70], edx
mov ecx, dword [ebp - 0x324]
mov dword [ebp - 0x334], ecx
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x338], eax
mov edx, dword [ebp - 0xec]
mov dword [ebp - 0x33c], edx
mov ecx, dword [ebp - 0x334]
push ecx
mov eax, dword [ebp - 0x338]
push eax
mov edx, dword [ebp - 0x33c]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor ecx, ecx
mov dword [ebp - 0x340], ecx
mov eax, dword [ebp - 0x340]
mov dword [ebp - 0xdc], eax
mov edx, dword [ebp - 0x50]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x46d83f
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x344], eax
mov edx, dword [ebp - 0x344]
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0x348], ecx
mov eax, dword [ebp - 0x348]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xd80], edx
mov ecx, dword [ebp - 0xdc]
add ecx, 0xfffffff4
mov dword [ebp - 0x34c], ecx
mov edx, dword [ebp - 0x34c]
cmp eax, edx
je 0x46d8e2
mov ecx, dword [ebp - 0x34c]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46d8e2
mov eax, dword [ebp - 0x50]
mov edx, dword [eax - 4]
mov dword [ebp - 0x350], edx
mov ecx, dword [ebp - 0x350]
push ecx
mov eax, dword [ebp - 0x350]
push eax
lea edx, [ebp - 0xe4]
push edx
call fcn.0069a874
mov dword [ebp - 0x358], eax
add esp, 0xc
mov ecx, dword [ebp - 0x358]
lea edx, [ebp - 0xe4]
add ecx, 0xc
mov dword [ebp - 0x354], ecx
mov eax, dword [ebp - 0x354]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x35c], edx
mov ecx, dword [ebp - 0x35c]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd90], eax
mov edx, dword [ebp - 0x350]
mov dword [ebp - 0x360], edx
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x364], ecx
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x368], eax
mov edx, dword [ebp - 0x360]
push edx
mov ecx, dword [ebp - 0x364]
push ecx
mov eax, dword [ebp - 0x368]
push eax
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor edx, edx
mov dword [ebp - 0x36c], edx
mov ecx, dword [ebp - 0x36c]
mov dword [ebp - 0xcc], ecx
mov eax, dword [ebp - 0x40]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x46d96a
mov ecx, dword [ebp - 0x40]
lea edx, [ebp - 0xd4]
mov dword [ebp - 0x370], ecx
mov eax, dword [ebp - 0x370]
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0x374], edx
mov ecx, dword [ebp - 0x374]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0xda0], eax
mov edx, dword [ebp - 0xcc]
add edx, 0xfffffff4
mov dword [ebp - 0x378], edx
mov eax, dword [ebp - 0x378]
cmp ecx, eax
je 0x46da0d
mov edx, dword [ebp - 0x378]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46da0d
mov ecx, dword [ebp - 0x40]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x37c], eax
mov edx, dword [ebp - 0x37c]
push edx
mov ecx, dword [ebp - 0x37c]
push ecx
lea eax, [ebp - 0xd4]
push eax
call fcn.0069a874
mov dword [ebp - 0x384], eax
add esp, 0xc
mov edx, dword [ebp - 0x384]
lea eax, [ebp - 0xd4]
add edx, 0xc
mov dword [ebp - 0x380], edx
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0x388], eax
mov edx, dword [ebp - 0x388]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xdb0], ecx
mov eax, dword [ebp - 0x37c]
mov dword [ebp - 0x38c], eax
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x390], edx
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0x394], ecx
mov eax, dword [ebp - 0x38c]
push eax
mov edx, dword [ebp - 0x390]
push edx
mov ecx, dword [ebp - 0x394]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor eax, eax
mov dword [ebp - 0x398], eax
mov edx, dword [ebp - 0x398]
mov dword [ebp - 0xbc], edx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x46da95
mov edx, dword [ebp - 0x30]
lea eax, [ebp - 0xc4]
mov dword [ebp - 0x39c], edx
mov ecx, dword [ebp - 0x39c]
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0x3a0], eax
mov edx, dword [ebp - 0x3a0]
mov ecx, dword [edx + 8]
mov edx, 0x6ff36c
mov dword [ebp - 0xdc0], ecx
mov eax, dword [ebp - 0xbc]
add eax, 0xfffffff4
mov dword [ebp - 0x3a4], eax
mov ecx, dword [ebp - 0x3a4]
cmp edx, ecx
je 0x46db38
mov eax, dword [ebp - 0x3a4]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46db38
mov edx, dword [ebp - 0x30]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x3a8], ecx
mov eax, dword [ebp - 0x3a8]
push eax
mov edx, dword [ebp - 0x3a8]
push edx
lea ecx, [ebp - 0xc4]
push ecx
call fcn.0069a874
mov dword [ebp - 0x3b0], eax
add esp, 0xc
mov eax, dword [ebp - 0x3b0]
lea ecx, [ebp - 0xc4]
add eax, 0xc
mov dword [ebp - 0x3ac], eax
mov edx, dword [ebp - 0x3ac]
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0x3b4], ecx
mov eax, dword [ebp - 0x3b4]
mov edx, dword [eax + 8]
mov dword [ebp - 0xdd0], edx
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3b8], ecx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x3bc], eax
mov edx, dword [ebp - 0xbc]
mov dword [ebp - 0x3c0], edx
mov ecx, dword [ebp - 0x3b8]
push ecx
mov eax, dword [ebp - 0x3bc]
push eax
mov edx, dword [ebp - 0x3c0]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
lea eax, [ebp - 0x11c]
mov cl, byte [ebp - 0x28]
mov byte [ebp - 0xb4], cl
lea ecx, [esi + 0x68]
inc dword [ebp - 0x1b4]
mov word [ebp - 0x1c0], 0x98
inc dword [ebp - 0x1b4]
mov dword [ebp - 0x30c], eax
mov edx, dword [ebp - 0x30c]
lea eax, [ebp - 0xdf0]
push edx
push ecx
push eax
call fcn.0046ae40
add esp, 0xc
mov edx, dword [ebp - 0xdf0]
mov dword [ebp - 0xe00], edx
mov edx, dword [ebp - 0xdec]
mov dword [ebp - 0xdfc], edx
mov ecx, dword [ebp - 0xde8]
mov dword [ebp - 0xdf8], ecx
dec dword [ebp - 0x1b4]
dec dword [ebp - 0x1b4]
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x46dc82
mov edx, dword [ebp - 0xbc]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46dc28
mov eax, dword [ebp - 0xbc]
add eax, 0xfffffff4
mov dword [ebp - 0x3c4], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x3c4]
cmp edx, ecx
je 0x46dc1f
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x3c4]
cmp eax, edx
je 0x46dc18
mov ecx, dword [ebp - 0x3c4]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x3c4]
mov edx, dword [eax]
inc edx
jmp 0x46dc24
mov edx, 1
jmp 0x46dc24
mov edx, 1
test edx, edx
jne 0x46dc82
mov eax, dword [ebp - 0xbc]
add eax, 0xfffffff4
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0xbc]
add ecx, 0xfffffff4
mov dword [ebp - 0x3cc], ecx
mov eax, dword [ebp - 0x3cc]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x3d0], edx
lea eax, [ebp - 0xc4]
mov ecx, dword [ebp - 0x3d0]
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0x3d4], eax
mov edx, dword [ebp - 0x3d4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe08], ecx
mov word [ebp - 0x1c0], 0x50
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x46dd5b
mov edx, dword [ebp - 0xcc]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46dd01
mov eax, dword [ebp - 0xcc]
add eax, 0xfffffff4
mov dword [ebp - 0x3d8], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x3d8]
cmp edx, ecx
je 0x46dcf8
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x3d8]
cmp eax, edx
je 0x46dcf1
mov ecx, dword [ebp - 0x3d8]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x3d8]
mov edx, dword [eax]
inc edx
jmp 0x46dcfd
mov edx, 1
jmp 0x46dcfd
mov edx, 1
test edx, edx
jne 0x46dd5b
mov eax, dword [ebp - 0xcc]
add eax, 0xfffffff4
mov dword [ebp - 0x3dc], eax
mov ecx, dword [ebp - 0xcc]
add ecx, 0xfffffff4
mov dword [ebp - 0x3e0], ecx
mov eax, dword [ebp - 0x3e0]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x3e4], edx
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0x3e8], eax
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe18], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x46de2b
mov edx, dword [ebp - 0xdc]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46ddd1
mov eax, dword [ebp - 0xdc]
add eax, 0xfffffff4
mov dword [ebp - 0x3ec], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x3ec]
cmp edx, ecx
je 0x46ddc8
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x3ec]
cmp eax, edx
je 0x46ddc1
mov ecx, dword [ebp - 0x3ec]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x3ec]
mov edx, dword [eax]
inc edx
jmp 0x46ddcd
mov edx, 1
jmp 0x46ddcd
mov edx, 1
test edx, edx
jne 0x46de2b
mov eax, dword [ebp - 0xdc]
add eax, 0xfffffff4
mov dword [ebp - 0x3f0], eax
mov ecx, dword [ebp - 0xdc]
add ecx, 0xfffffff4
mov dword [ebp - 0x3f4], ecx
mov eax, dword [ebp - 0x3f4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x3f8], edx
lea eax, [ebp - 0xe4]
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0x3fc], eax
mov edx, dword [ebp - 0x3fc]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe28], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0xec]
test eax, eax
je 0x46defb
mov edx, dword [ebp - 0xec]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46dea1
mov eax, dword [ebp - 0xec]
add eax, 0xfffffff4
mov dword [ebp - 0x400], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x400]
cmp edx, ecx
je 0x46de98
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x400]
cmp eax, edx
je 0x46de91
mov ecx, dword [ebp - 0x400]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x400]
mov edx, dword [eax]
inc edx
jmp 0x46de9d
mov edx, 1
jmp 0x46de9d
mov edx, 1
test edx, edx
jne 0x46defb
mov eax, dword [ebp - 0xec]
add eax, 0xfffffff4
mov dword [ebp - 0x404], eax
mov ecx, dword [ebp - 0xec]
add ecx, 0xfffffff4
mov dword [ebp - 0x408], ecx
mov eax, dword [ebp - 0x408]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x40c], edx
lea eax, [ebp - 0xf4]
mov ecx, dword [ebp - 0x40c]
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0x410], eax
mov edx, dword [ebp - 0x410]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe38], ecx
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x414], eax
lea edx, [ebp - 0x210]
push edx
lea ecx, [esi + 0x68]
push ecx
lea eax, [ebp - 0xe50]
push eax
call fcn.0045ecfc
add esp, 0xc
push esi
lea esi, [ebp - 0xe50]
lea edi, [ebp - 0x978]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [esi + 0x8c]
mov dword [ebp - 0xe58], eax
mov eax, dword [ebp - 0xe58]
mov edx, dword [ebp - 0x970]
cmp eax, edx
sete cl
and ecx, 1
test cl, cl
jne 0x46e912
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x10]
mov ecx, dword [ebp - 0x210]
cmp edx, ecx
jne 0x46e912
mov ebx, dword [ebp - 0x970]
add ebx, 0x18
lea eax, [ebx + 0x20]
push eax
lea edx, [ebp - 0x68]
push edx
call fcn.0069a2e0
add esp, 8
lea ecx, [ebx + 0x30]
push ecx
lea eax, [ebp - 0x58]
push eax
call fcn.0069a2e0
add esp, 8
lea edx, [ebx + 0x40]
push edx
lea ecx, [ebp - 0x48]
push ecx
call fcn.0069a2e0
add esp, 8
lea eax, [ebx + 0x50]
push eax
lea edx, [ebp - 0x38]
push edx
call fcn.0069a2e0
mov ecx, dword [ebx]
add esp, 8
mov dword [ebp - 0x88], ecx
add esp, 0xfffffff0
mov ax, word [ebx + 4]
mov word [ebp - 0x84], ax
mov dl, byte [ebx + 6]
mov byte [ebp - 0x82], dl
mov cl, byte [ebx + 7]
mov byte [ebp - 0x81], cl
mov eax, dword [ebx + 8]
mov dword [ebp - 0x80], eax
mov edx, dword [ebx + 0xc]
mov dword [ebp - 0x7c], edx
mov cl, byte [ebx + 0x10]
mov byte [ebp - 0x78], cl
mov al, byte [ebx + 0x11]
mov byte [ebp - 0x77], al
mov dl, byte [ebx + 0x12]
mov byte [ebp - 0x76], dl
mov cl, byte [ebx + 0x13]
mov byte [ebp - 0x75], cl
mov al, byte [ebx + 0x14]
mov byte [ebp - 0x74], al
mov dl, byte [ebx + 0x15]
mov byte [ebp - 0x73], dl
mov cl, byte [ebx + 0x16]
mov byte [ebp - 0x72], cl
mov al, byte [ebx + 0x17]
mov byte [ebp - 0x71], al
mov dl, byte [ebx + 0x18]
mov byte [ebp - 0x70], dl
mov cl, byte [ebx + 0x60]
mov byte [ebp - 0x28], cl
mov eax, dword [ebp - 0x978]
mov dword [ebp - 0xe70], eax
mov eax, dword [ebp - 0x974]
mov dword [ebp - 0xe6c], eax
mov edx, dword [ebp - 0x970]
mov dword [ebp - 0xe68], edx
lea edx, [esi + 0x68]
mov ecx, dword [ebp - 0xe70]
mov dword [esp], ecx
mov ecx, dword [ebp - 0xe6c]
mov dword [esp + 4], ecx
lea ecx, [ebp - 0xe80]
mov eax, dword [ebp - 0xe68]
mov dword [esp + 8], eax
push edx
push ecx
call fcn.00449efc
mov eax, dword [ebp - 0x414]
add esp, 0x18
mov dword [ebp - 0x88], eax
mov word [ebp - 0x1c0], 0x110
mov edx, dword [ebp - 0x414]
mov ecx, dword [edx + 4]
mov dword [ebp - 0x41c], ecx
mov eax, dword [ebp - 0x41c]
mov dword [ebp - 0x18c], eax
mov edx, dword [ebp - 0x88]
mov dword [ebp - 0x184], edx
mov cx, word [ebp - 0x84]
mov word [ebp - 0x180], cx
mov al, byte [ebp - 0x82]
mov byte [ebp - 0x17e], al
mov dl, byte [ebp - 0x81]
mov byte [ebp - 0x17d], dl
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x17c], ecx
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x178], eax
mov dl, byte [ebp - 0x78]
mov byte [ebp - 0x174], dl
mov cl, byte [ebp - 0x77]
mov byte [ebp - 0x173], cl
mov al, byte [ebp - 0x76]
mov byte [ebp - 0x172], al
mov dl, byte [ebp - 0x75]
mov byte [ebp - 0x171], dl
mov cl, byte [ebp - 0x74]
mov byte [ebp - 0x170], cl
mov al, byte [ebp - 0x73]
mov byte [ebp - 0x16f], al
mov dl, byte [ebp - 0x72]
mov byte [ebp - 0x16e], dl
xor edx, edx
mov cl, byte [ebp - 0x71]
mov byte [ebp - 0x16d], cl
mov al, byte [ebp - 0x70]
mov byte [ebp - 0x16c], al
mov dword [ebp - 0x420], edx
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x15c], ecx
mov word [ebp - 0x1c0], 0x11c
mov eax, dword [ebp - 0x60]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x46e1d2
mov ecx, dword [ebp - 0x60]
lea edx, [ebp - 0x164]
mov dword [ebp - 0x424], ecx
mov eax, dword [ebp - 0x424]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x428], edx
mov ecx, dword [ebp - 0x428]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0xe88], eax
mov edx, dword [ebp - 0x15c]
add edx, 0xfffffff4
mov dword [ebp - 0x42c], edx
mov eax, dword [ebp - 0x42c]
cmp ecx, eax
je 0x46e25d
mov edx, dword [ebp - 0x42c]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46e25d
mov ecx, dword [ebp - 0x60]
lea eax, [ebp - 0x164]
mov ebx, dword [ecx - 4]
push ebx
push ebx
push eax
call fcn.0069a874
mov dword [ebp - 0x434], eax
add esp, 0xc
mov edx, dword [ebp - 0x434]
lea eax, [ebp - 0x164]
add edx, 0xc
mov dword [ebp - 0x430], edx
mov ecx, dword [ebp - 0x430]
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x438], eax
mov edx, dword [ebp - 0x438]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xe98], ecx
mov dword [ebp - 0x43c], ebx
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x440], eax
mov edx, dword [ebp - 0x15c]
mov dword [ebp - 0x444], edx
mov ecx, dword [ebp - 0x43c]
push ecx
mov eax, dword [ebp - 0x440]
push eax
mov edx, dword [ebp - 0x444]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor ecx, ecx
mov dword [ebp - 0x448], ecx
mov eax, dword [ebp - 0x448]
mov dword [ebp - 0x14c], eax
mov edx, dword [ebp - 0x50]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x46e2e5
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x44c], eax
mov edx, dword [ebp - 0x44c]
mov dword [ebp - 0x14c], edx
mov dword [ebp - 0x450], ecx
mov eax, dword [ebp - 0x450]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xea8], edx
mov ecx, dword [ebp - 0x14c]
add ecx, 0xfffffff4
mov dword [ebp - 0x454], ecx
mov edx, dword [ebp - 0x454]
cmp eax, edx
je 0x46e370
mov ecx, dword [ebp - 0x454]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46e370
mov eax, dword [ebp - 0x50]
lea edx, [ebp - 0x154]
mov edi, dword [eax - 4]
push edi
push edi
push edx
call fcn.0069a874
mov dword [ebp - 0x45c], eax
add esp, 0xc
mov ecx, dword [ebp - 0x45c]
lea edx, [ebp - 0x154]
add ecx, 0xc
mov dword [ebp - 0x458], ecx
mov eax, dword [ebp - 0x458]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x460], edx
mov ecx, dword [ebp - 0x460]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xeb8], eax
mov dword [ebp - 0x464], edi
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x468], edx
mov ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x46c], ecx
mov eax, dword [ebp - 0x464]
push eax
mov edx, dword [ebp - 0x468]
push edx
mov ecx, dword [ebp - 0x46c]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor eax, eax
mov dword [ebp - 0x470], eax
mov edx, dword [ebp - 0x470]
mov dword [ebp - 0x13c], edx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x46e3f8
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 0x144]
mov dword [ebp - 0x474], edx
mov ecx, dword [ebp - 0x474]
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x478], eax
mov edx, dword [ebp - 0x478]
mov ecx, dword [edx + 8]
mov edx, 0x6ff36c
mov dword [ebp - 0xec8], ecx
mov eax, dword [ebp - 0x13c]
add eax, 0xfffffff4
mov dword [ebp - 0x47c], eax
mov ecx, dword [ebp - 0x47c]
cmp edx, ecx
je 0x46e49b
mov eax, dword [ebp - 0x47c]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46e49b
mov edx, dword [ebp - 0x40]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x480], ecx
mov eax, dword [ebp - 0x480]
push eax
mov edx, dword [ebp - 0x480]
push edx
lea ecx, [ebp - 0x144]
push ecx
call fcn.0069a874
mov dword [ebp - 0x488], eax
add esp, 0xc
mov eax, dword [ebp - 0x488]
lea ecx, [ebp - 0x144]
add eax, 0xc
mov dword [ebp - 0x484], eax
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x13c], edx
mov dword [ebp - 0x48c], ecx
mov eax, dword [ebp - 0x48c]
mov edx, dword [eax + 8]
mov dword [ebp - 0xed8], edx
mov ecx, dword [ebp - 0x480]
mov dword [ebp - 0x490], ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x494], eax
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0x498], edx
mov ecx, dword [ebp - 0x490]
push ecx
mov eax, dword [ebp - 0x494]
push eax
mov edx, dword [ebp - 0x498]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
xor ecx, ecx
mov dword [ebp - 0x49c], ecx
mov eax, dword [ebp - 0x49c]
mov dword [ebp - 0x12c], eax
mov edx, dword [ebp - 0x30]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x46e523
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x4a0], eax
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x12c], edx
mov dword [ebp - 0x4a4], ecx
mov eax, dword [ebp - 0x4a4]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0xee8], edx
mov ecx, dword [ebp - 0x12c]
add ecx, 0xfffffff4
mov dword [ebp - 0x4a8], ecx
mov edx, dword [ebp - 0x4a8]
cmp eax, edx
je 0x46e5c6
mov ecx, dword [ebp - 0x4a8]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46e5c6
mov eax, dword [ebp - 0x30]
mov edx, dword [eax - 4]
mov dword [ebp - 0x4ac], edx
mov ecx, dword [ebp - 0x4ac]
push ecx
mov eax, dword [ebp - 0x4ac]
push eax
lea edx, [ebp - 0x134]
push edx
call fcn.0069a874
mov dword [ebp - 0x4b4], eax
add esp, 0xc
mov ecx, dword [ebp - 0x4b4]
lea edx, [ebp - 0x134]
add ecx, 0xc
mov dword [ebp - 0x4b0], ecx
mov eax, dword [ebp - 0x4b0]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x4b8], edx
mov ecx, dword [ebp - 0x4b8]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xef8], eax
mov edx, dword [ebp - 0x4ac]
mov dword [ebp - 0x4bc], edx
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x4c0], ecx
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x4c4], eax
mov edx, dword [ebp - 0x4bc]
push edx
mov ecx, dword [ebp - 0x4c0]
push ecx
mov eax, dword [ebp - 0x4c4]
push eax
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
lea ecx, [ebp - 0x18c]
mov dl, byte [ebp - 0x28]
mov byte [ebp - 0x124], dl
lea edx, [esi + 0x68]
inc dword [ebp - 0x1b4]
mov word [ebp - 0x1c0], 0x110
inc dword [ebp - 0x1b4]
mov dword [ebp - 0x418], ecx
mov eax, dword [ebp - 0x418]
lea ecx, [ebp - 0xf18]
push eax
push edx
push ecx
call fcn.0046ae40
add esp, 0xc
mov eax, dword [ebp - 0xf18]
mov dword [ebp - 0xf28], eax
mov eax, dword [ebp - 0xf14]
mov dword [ebp - 0xf24], eax
mov edx, dword [ebp - 0xf10]
mov dword [ebp - 0xf20], edx
dec dword [ebp - 0x1b4]
dec dword [ebp - 0x1b4]
dec dword [ebp - 0x1b4]
mov ecx, dword [ebp - 0x12c]
test ecx, ecx
je 0x46e6f0
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x46e696
mov ebx, dword [ebp - 0x12c]
add ebx, 0xfffffff4
cmp ebx, 0x6ff36c
je 0x46e68d
cmp ebx, 0x6ff36c
je 0x46e686
push ebx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebx]
inc eax
jmp 0x46e692
mov eax, 1
jmp 0x46e692
mov eax, 1
test eax, eax
jne 0x46e6f0
mov edx, dword [ebp - 0x12c]
add edx, 0xfffffff4
mov dword [ebp - 0x4c8], edx
mov ecx, dword [ebp - 0x12c]
add ecx, 0xfffffff4
mov dword [ebp - 0x4cc], ecx
mov eax, dword [ebp - 0x4cc]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x4d0], edx
lea eax, [ebp - 0x134]
mov ecx, dword [ebp - 0x4d0]
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x4d4], eax
mov edx, dword [ebp - 0x4d4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf30], ecx
mov word [ebp - 0x1c0], 0x50
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x13c]
test eax, eax
je 0x46e7a9
mov edx, dword [ebp - 0x13c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46e74f
mov ebx, dword [ebp - 0x13c]
add ebx, 0xfffffff4
cmp ebx, 0x6ff36c
je 0x46e746
cmp ebx, 0x6ff36c
je 0x46e73f
push ebx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebx]
inc eax
jmp 0x46e74b
mov eax, 1
jmp 0x46e74b
mov eax, 1
test eax, eax
jne 0x46e7a9
mov edx, dword [ebp - 0x13c]
add edx, 0xfffffff4
mov dword [ebp - 0x4d8], edx
mov ecx, dword [ebp - 0x13c]
add ecx, 0xfffffff4
mov dword [ebp - 0x4dc], ecx
mov eax, dword [ebp - 0x4dc]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x4e0], edx
lea eax, [ebp - 0x144]
mov ecx, dword [ebp - 0x4e0]
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x4e4], eax
mov edx, dword [ebp - 0x4e4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf40], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x14c]
test eax, eax
je 0x46e859
mov edx, dword [ebp - 0x14c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46e7ff
mov ebx, dword [ebp - 0x14c]
add ebx, 0xfffffff4
cmp ebx, 0x6ff36c
je 0x46e7f6
cmp ebx, 0x6ff36c
je 0x46e7ef
push ebx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebx]
inc eax
jmp 0x46e7fb
mov eax, 1
jmp 0x46e7fb
mov eax, 1
test eax, eax
jne 0x46e859
mov edx, dword [ebp - 0x14c]
add edx, 0xfffffff4
mov dword [ebp - 0x4e8], edx
mov ecx, dword [ebp - 0x14c]
add ecx, 0xfffffff4
mov dword [ebp - 0x4ec], ecx
mov eax, dword [ebp - 0x4ec]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x4f0], edx
lea eax, [ebp - 0x154]
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0x14c], ecx
mov dword [ebp - 0x4f4], eax
mov edx, dword [ebp - 0x4f4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf50], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x15c]
test eax, eax
je 0x46df07
mov edx, dword [ebp - 0x15c]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46e8b3
mov ebx, dword [ebp - 0x15c]
add ebx, 0xfffffff4
cmp ebx, 0x6ff36c
je 0x46e8a6
cmp ebx, 0x6ff36c
je 0x46e89f
push ebx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebx]
inc eax
jmp 0x46e8ab
mov eax, 1
jmp 0x46e8ab
mov eax, 1
test eax, eax
jne 0x46df07
mov edx, dword [ebp - 0x15c]
add edx, 0xfffffff4
mov dword [ebp - 0x4f8], edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0xfffffff4
mov dword [ebp - 0x4fc], ecx
mov eax, dword [ebp - 0x4fc]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x500], edx
lea eax, [ebp - 0x164]
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x504], eax
mov edx, dword [ebp - 0x504]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf60], ecx
jmp 0x46df07
dec dword [ebp - 0x1b4]
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x46e9d3
mov edx, dword [ebp - 0x30]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46e985
mov eax, dword [ebp - 0x30]
add eax, 0xfffffff4
mov dword [ebp - 0x508], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x508]
cmp edx, ecx
je 0x46e97c
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x508]
cmp eax, edx
je 0x46e975
mov ecx, dword [ebp - 0x508]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x508]
mov edx, dword [eax]
inc edx
jmp 0x46e981
mov edx, 1
jmp 0x46e981
mov edx, 1
test edx, edx
jne 0x46e9d3
mov eax, dword [ebp - 0x30]
add eax, 0xfffffff4
mov dword [ebp - 0x50c], eax
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff4
mov dword [ebp - 0x510], ecx
mov eax, dword [ebp - 0x510]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x514], edx
lea eax, [ebp - 0x38]
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x518], eax
mov edx, dword [ebp - 0x518]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf70], ecx
mov word [ebp - 0x1c0], 0x50
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x46ea97
mov edx, dword [ebp - 0x40]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46ea49
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff4
mov dword [ebp - 0x51c], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x51c]
cmp edx, ecx
je 0x46ea40
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x51c]
cmp eax, edx
je 0x46ea39
mov ecx, dword [ebp - 0x51c]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x51c]
mov edx, dword [eax]
inc edx
jmp 0x46ea45
mov edx, 1
jmp 0x46ea45
mov edx, 1
test edx, edx
jne 0x46ea97
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff4
mov dword [ebp - 0x520], eax
mov ecx, dword [ebp - 0x40]
add ecx, 0xfffffff4
mov dword [ebp - 0x524], ecx
mov eax, dword [ebp - 0x524]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x528], edx
lea eax, [ebp - 0x48]
mov ecx, dword [ebp - 0x528]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x52c], eax
mov edx, dword [ebp - 0x52c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf80], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x46eb52
mov edx, dword [ebp - 0x50]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46eb04
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff4
mov dword [ebp - 0x530], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x530]
cmp edx, ecx
je 0x46eafb
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x530]
cmp eax, edx
je 0x46eaf4
mov ecx, dword [ebp - 0x530]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x530]
mov edx, dword [eax]
inc edx
jmp 0x46eb00
mov edx, 1
jmp 0x46eb00
mov edx, 1
test edx, edx
jne 0x46eb52
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff4
mov dword [ebp - 0x534], eax
mov ecx, dword [ebp - 0x50]
add ecx, 0xfffffff4
mov dword [ebp - 0x538], ecx
mov eax, dword [ebp - 0x538]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x53c], edx
lea eax, [ebp - 0x58]
mov ecx, dword [ebp - 0x53c]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x540], eax
mov edx, dword [ebp - 0x540]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xf90], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x46ec0d
mov edx, dword [ebp - 0x60]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46ebbf
mov eax, dword [ebp - 0x60]
add eax, 0xfffffff4
mov dword [ebp - 0x544], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x544]
cmp edx, ecx
je 0x46ebb6
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x544]
cmp eax, edx
je 0x46ebaf
mov ecx, dword [ebp - 0x544]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x544]
mov edx, dword [eax]
inc edx
jmp 0x46ebbb
mov edx, 1
jmp 0x46ebbb
mov edx, 1
test edx, edx
jne 0x46ec0d
mov eax, dword [ebp - 0x60]
add eax, 0xfffffff4
mov dword [ebp - 0x548], eax
mov ecx, dword [ebp - 0x60]
add ecx, 0xfffffff4
mov dword [ebp - 0x54c], ecx
mov eax, dword [ebp - 0x54c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x550], edx
lea eax, [ebp - 0x68]
mov ecx, dword [ebp - 0x550]
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x554], eax
mov edx, dword [ebp - 0x554]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xfa0], ecx
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
jmp 0x46fd05
push 0x190
call fcn.0067ac68
pop ecx
mov dword [ebp - 0x190], eax
test eax, eax
je 0x46ec7e
mov word [ebp - 0x1c0], 0x1c4
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x20]
push ecx
push 7
push 0x400
mov eax, dword [esi + 0x24]
push eax
mov edx, dword [esi + 0x28]
push edx
mov ecx, dword [ebp - 0x190]
push ecx
call fcn.00588fa8
add esp, 0x18
mov word [ebp - 0x1c0], 0x1b8
mov eax, dword [ebp - 0x190]
jmp 0x46ec84
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x558], eax
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x18]
push ecx
mov eax, dword [ebp - 0x558]
push eax
call fcn.0058cdd4
add esp, 8
mov byte [ebp - 0x1d2], al
mov dl, byte [ebp - 0x1d2]
test dl, dl
je 0x46ecfe
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x194], ecx
mov eax, dword [ebp - 0x194]
test eax, eax
je 0x46ecec
mov word [ebp - 0x1c0], 0x1dc
push 3
mov edx, dword [ebp - 0x194]
push edx
call fcn.005899b4
mov word [ebp - 0x1c0], 0x1d0
add esp, 8
mov ecx, dword [ebp - 0x1d0]
mov dword fs:[0], ecx
jmp 0x46fd05
mov eax, dword [ebp - 0x970]
mov dl, byte [eax + 0x1e]
test dl, dl
je 0x46f105
mov ecx, dword [ebp - 0x970]
mov eax, dword [ecx + 0x20]
lea ecx, [ebp - 0xfc8]
neg eax
dec eax
xor edx, edx
mov dword [ebp - 0xfb4], eax
mov dword [ebp - 0xfb0], edx
push ecx
lea eax, [esi + 0xa0]
push eax
lea edx, [ebp - 0xfd8]
push edx
call fcn.0046fd0c
add esp, 0xc
mov ecx, dword [ebp - 0xfd8]
mov dword [ebp - 0xfe8], ecx
mov ecx, dword [ebp - 0xfd4]
mov dword [ebp - 0xfe4], ecx
mov eax, dword [ebp - 0xfd0]
mov dword [ebp - 0xfe0], eax
mov edx, dword [ebp - 0x558]
push edx
call fcn.0058f3ac
mov edi, eax
xor eax, eax
pop ecx
push esi
or ecx, 0xffffffff
lea esi, [ebp - 0xff8]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
xor eax, eax
mov dword [ebp - 0x55c], eax
jmp 0x46ef06
mov eax, dword [ebp - 0xfd0]
lea edx, [ebp - 0xff8]
add eax, 0x14
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x46edd6
test cl, cl
je 0x46eddc
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x46edd6
add eax, 2
add edx, 2
test cl, cl
jne 0x46edba
jne 0x46eef3
mov eax, dword [ebp - 0xfd0]
lea ecx, [esi + 0x30]
add eax, 0x10
mov dword [ebp - 0x564], eax
lea eax, [ebp - 0x1018]
mov edx, dword [ebp - 0x564]
push edx
push ecx
push eax
call fcn.004334b4
mov edx, dword [ebp - 0xfd8]
add esp, 0xc
mov dword [ebp - 0x1028], edx
add esp, 0xfffffff0
mov edx, dword [ebp - 0xfd4]
mov dword [ebp - 0x1024], edx
mov ecx, dword [ebp - 0xfd0]
mov dword [ebp - 0x1020], ecx
lea ecx, [esi + 0xa0]
mov eax, dword [ebp - 0x1028]
mov dword [esp], eax
mov eax, dword [ebp - 0x1024]
mov dword [esp + 4], eax
lea eax, [ebp - 0x1038]
mov edx, dword [ebp - 0x1020]
mov dword [esp + 8], edx
push ecx
push eax
call fcn.00449154
add esp, 0x18
mov edx, dword [esi + 0x54]
mov dword [ebp - 0x568], edx
mov ecx, dword [ebp - 0x568]
mov dword [ebp - 0x1040], ecx
mov eax, dword [ebp - 0x1040]
mov edx, dword [ebp - 0x1010]
cmp eax, edx
setne cl
and ecx, 1
test cl, cl
je 0x46eea7
mov eax, dword [ebp - 0x558]
push eax
mov edx, dword [ebp - 0x1010]
mov ecx, dword [edx + 0x14]
push ecx
call fcn.0043a2e8
add esp, 8
jmp 0x46eee0
mov eax, dword [ebp - 0x558]
mov dword [ebp - 0x198], eax
mov edx, dword [ebp - 0x198]
test edx, edx
je 0x46eee0
mov word [ebp - 0x1c0], 0x1f4
push 3
mov ecx, dword [ebp - 0x198]
push ecx
call fcn.005899b4
mov word [ebp - 0x1c0], 0x1e8
add esp, 8
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
jmp 0x46fd05
inc dword [ebp - 0x55c]
lea edx, [ebp - 0xfd8]
push edx
call fcn.004490b0
pop ecx
mov ecx, dword [esi + 0xc4]
mov dword [ebp - 0x560], ecx
mov eax, dword [ebp - 0x560]
mov dword [ebp - 0x1000], eax
mov edx, dword [ebp - 0x1000]
mov ecx, dword [ebp - 0xfd0]
cmp edx, ecx
setne al
and eax, 1
test al, al
je 0x46ef4d
mov edx, dword [ebp - 0xfd0]
mov ecx, dword [edx + 0x24]
mov eax, dword [ebp - 0xfb4]
cmp ecx, eax
je 0x46edab
mov edx, dword [ebp - 0x55c]
dec edx
jne 0x46f070
mov ecx, dword [ebp - 0xfe0]
lea edx, [esi + 0x30]
add ecx, 0x10
mov dword [ebp - 0x56c], ecx
lea ecx, [ebp - 0x1058]
mov eax, dword [ebp - 0x56c]
push eax
push edx
push ecx
call fcn.004334b4
add esp, 0xc
mov eax, dword [esi + 0x54]
mov dword [ebp - 0x570], eax
mov edx, dword [ebp - 0x570]
mov dword [ebp - 0x1060], edx
mov ecx, dword [ebp - 0x1060]
mov eax, dword [ebp - 0x1050]
cmp ecx, eax
setne dl
and edx, 1
test dl, dl
je 0x46efcb
mov ecx, dword [ebp - 0x558]
push ecx
mov eax, dword [ebp - 0x1050]
mov edx, dword [eax + 0x14]
push edx
call fcn.0043a2e8
add esp, 8
jmp 0x46f004
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x19c], ecx
mov eax, dword [ebp - 0x19c]
test eax, eax
je 0x46f004
mov word [ebp - 0x1c0], 0x20c
push 3
mov edx, dword [ebp - 0x19c]
push edx
call fcn.005899b4
mov word [ebp - 0x1c0], pe_nt_image_headers32
add esp, 8
mov ecx, dword [ebp - 0xfe8]
add esp, 0xfffffff0
mov dword [ebp - 0x1078], ecx
add esi, 0xa0
mov ecx, dword [ebp - 0xfe4]
mov dword [ebp - 0x1074], ecx
mov eax, dword [ebp - 0xfe0]
mov dword [ebp - 0x1070], eax
lea eax, [ebp - 0x1088]
mov edx, dword [ebp - 0x1078]
mov dword [esp], edx
mov edx, dword [ebp - 0x1074]
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x1070]
mov dword [esp + 8], ecx
push esi
push eax
call fcn.00449154
add esp, 0x18
mov edx, dword [ebp - 0x1d0]
mov dword fs:[0], edx
jmp 0x46fd05
push 0x15e
lea ecx, [ebp - 0x808]
push ecx
push 0x822
mov eax, dword [esi + 0x28]
push eax
call sub.USER32.DLL_LoadStringA
lea edx, [ebp - 0xff8]
push edx
lea ecx, [ebp - 0x808]
push ecx
lea eax, [ebp - 0x968]
push eax
call fcn.006a0ad0
add esp, 0xc
lea edx, [ebp - 0x968]
push 0xffffffffffffffff
push edx
push 0x12
call fcn.005fb108
add esp, 0xc
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x1a0], ecx
mov eax, dword [ebp - 0x1a0]
test eax, eax
je 0x46f0f3
mov word [ebp - 0x1c0], 0x224
push 3
mov edx, dword [ebp - 0x1a0]
push edx
call fcn.005899b4
mov word [ebp - 0x1c0], 0x218
add esp, 8
mov ecx, dword [ebp - 0x1d0]
mov dword fs:[0], ecx
jmp 0x46fd05
mov word [ebp - 0x1c0], 0x23c
lea eax, [ebp - 0x578]
push eax
push 0
mov edx, dword [ebp - 0x558]
push edx
call fcn.0058e52c
add esp, 8
push eax
lea ecx, [ebp - 0x10]
push ecx
call fcn.0069a6ec
add esp, 0xc
inc dword [ebp - 0x1b4]
mov word [ebp - 0x1c0], 0x230
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x57c], edx
xor ebx, ebx
mov eax, dword [esi + 0x8c]
mov dword [ebp - 0x580], eax
mov edx, dword [ebp - 0x580]
mov dword [ebp - 0x1090], edx
jmp 0x46f1d4
mov eax, dword [ebp - 8]
mov edi, dword [ebp - 0x970]
add edi, 0x38
mov edx, dword [eax - 4]
push edx
mov ecx, dword [ebp - 8]
push ecx
mov eax, dword [edi + 8]
mov edx, dword [eax - 4]
push edx
push 0
push edi
call fcn.0069b5b8
add esp, 0x14
test eax, eax
jne 0x46f19b
mov cl, 1
jmp 0x46f19d
xor ecx, ecx
test cl, cl
je 0x46f1a5
mov bl, 1
jmp 0x46f1d4
mov eax, dword [ebp - 0x970]
mov dl, byte [eax + 0x1f]
test dl, dl
je 0x46f1c7
push esi
lea esi, [ebp - 0x978]
lea edi, [ebp - 0x1098]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop esi
lea eax, [ebp - 0x978]
push eax
call fcn.00448418
pop ecx
mov edx, dword [ebp - 0x970]
mov ecx, dword [edx + 0x10]
mov eax, dword [ebp - 0x57c]
cmp ecx, eax
jne 0x46f1eb
test bl, bl
je 0x46f16d
test bl, bl
jne 0x46f34a
mov edx, dword [esi + 0x8c]
mov dword [ebp - 0x584], edx
mov ecx, dword [ebp - 0x584]
mov dword [ebp - 0x10a0], ecx
mov eax, dword [ebp - 0x10a0]
mov edx, dword [ebp - 0x1090]
cmp eax, edx
sete cl
and ecx, 1
test cl, cl
je 0x46f335
mov eax, dword [ebp - 0x558]
mov dword [ebp - 0x1a4], eax
mov edx, dword [ebp - 0x1a4]
test edx, edx
je 0x46f260
mov word [ebp - 0x1c0], 0x254
push 3
mov ecx, dword [ebp - 0x1a4]
push ecx
call fcn.005899b4
mov word [ebp - 0x1c0], 0x248
add esp, 8
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 8]
test eax, eax
je 0x46f31b
mov edx, dword [ebp - 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46f2cd
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x588], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x588]
cmp edx, ecx
je 0x46f2c4
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x588]
cmp eax, edx
je 0x46f2bd
mov ecx, dword [ebp - 0x588]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x588]
mov edx, dword [eax]
inc edx
jmp 0x46f2c9
mov edx, 1
jmp 0x46f2c9
mov edx, 1
test edx, edx
jne 0x46f31b
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x58c], eax
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x590], ecx
mov eax, dword [ebp - 0x590]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x594], edx
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x594]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x598], eax
mov edx, dword [ebp - 0x598]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x10b0], ecx
mov word [ebp - 0x1c0], 0x230
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
jmp 0x46fd05
push esi
lea esi, [ebp - 0x1098]
lea edi, [ebp - 0x978]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [ebp - 0x970]
add eax, 0x18
push eax
mov edx, dword [ebp - 0x558]
push edx
call fcn.0058f3ac
pop ecx
push eax
push esi
call fcn.00475464
add esp, 0xc
test al, al
je 0x46f481
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x1a8], ecx
mov eax, dword [ebp - 0x1a8]
test eax, eax
je 0x46f3ac
mov word [ebp - 0x1c0], 0x278
push 3
mov edx, dword [ebp - 0x1a8]
push edx
call fcn.005899b4
mov word [ebp - 0x1c0], 0x26c
add esp, 8
dec dword [ebp - 0x1b4]
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x46f467
mov eax, dword [ebp - 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x46f419
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x59c], ecx
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x59c]
cmp eax, edx
je 0x46f410
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x59c]
cmp ecx, eax
je 0x46f409
mov edx, dword [ebp - 0x59c]
push edx
call sub.KERNEL32.DLL_InterlockedDecrement
mov ecx, dword [ebp - 0x59c]
mov eax, dword [ecx]
inc eax
jmp 0x46f415
mov eax, 1
jmp 0x46f415
mov eax, 1
test eax, eax
jne 0x46f467
mov edx, dword [ebp - 8]
add edx, 0xfffffff4
mov dword [ebp - 0x5a0], edx
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x5a4], ecx
mov eax, dword [ebp - 0x5a4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x5a8], edx
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x5a8]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x5ac], eax
mov edx, dword [ebp - 0x5ac]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x10c0], ecx
mov word [ebp - 0x1c0], 0x230
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
jmp 0x46fd05
mov word [ebp - 0x1c0], 0x290
mov edx, dword [ebp - 0x970]
xor ecx, ecx
add edx, 0x48
mov dword [ebp - 0x5b0], edx
mov dword [ebp - 0x5b4], ecx
mov eax, dword [ebp - 0x5b4]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x46f51b
mov edx, dword [ebp - 0x5b0]
mov ecx, dword [edx + 8]
lea edx, [ebp - 0x20]
mov dword [ebp - 0x5b8], ecx
mov eax, dword [ebp - 0x5b8]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x5bc], edx
mov ecx, dword [ebp - 0x5bc]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0x10d0], eax
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff4
mov dword [ebp - 0x5c0], edx
mov eax, dword [ebp - 0x5c0]
cmp ecx, eax
je 0x46f5be
mov edx, dword [ebp - 0x5c0]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46f5be
mov ecx, dword [ebp - 0x5b0]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 4]
mov dword [ebp - 0x5c4], edx
mov ecx, dword [ebp - 0x5c4]
push ecx
mov eax, dword [ebp - 0x5c4]
push eax
lea edx, [ebp - 0x20]
push edx
call fcn.0069a874
mov dword [ebp - 0x5cc], eax
add esp, 0xc
mov ecx, dword [ebp - 0x5cc]
lea edx, [ebp - 0x20]
add ecx, 0xc
mov dword [ebp - 0x5c8], ecx
mov eax, dword [ebp - 0x5c8]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x5d0], edx
mov ecx, dword [ebp - 0x5d0]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x10e0], eax
mov edx, dword [ebp - 0x5c4]
mov dword [ebp - 0x5d4], edx
mov ecx, dword [ebp - 0x5b0]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x5d8], eax
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x5dc], edx
mov ecx, dword [ebp - 0x5d4]
push ecx
mov eax, dword [ebp - 0x5d8]
push eax
mov edx, dword [ebp - 0x5dc]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
mov word [ebp - 0x1c0], 0x230
mov ecx, dword [ebp - 0x970]
mov al, byte [ecx + 0x2c]
test al, al
je 0x46f69b
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx - 4]
test ecx, ecx
sete al
and eax, 1
test al, al
je 0x46f69b
mov edx, dword [ebp - 0x970]
mov cl, byte [edx + 0x2d]
test cl, cl
je 0x46f69b
mov eax, dword [ebp - 0x970]
lea ecx, [ebp - 0x20]
mov edx, dword [eax + 0x20]
mov eax, dword [0x6b60b4]
push edx
push ecx
push eax
call fcn.005a8924
add esp, 0xc
test al, al
je 0x46f69b
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx - 4]
test ecx, ecx
sete al
and eax, 1
test al, al
jne 0x46f685
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx - 0xc]
inc ecx
dec ecx
jle 0x46f64b
lea eax, [ebp - 0x20]
push eax
call fcn.0069c29c
pop ecx
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff4
mov dword [ebp - 0x5e0], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x5e0]
cmp ecx, eax
je 0x46f674
push 0xffffffffffffffff
mov edx, dword [ebp - 0x5e0]
push edx
call sub.KERNEL32.DLL_InterlockedExchange
mov ecx, dword [ebp - 0x18]
movsx eax, byte [ecx]
push eax
call fcn.006a2424
pop ecx
test eax, eax
jne 0x46f69b
mov edx, dword [ebp - 0x970]
add edx, 0x48
push edx
lea ecx, [ebp - 0x20]
push ecx
call fcn.0069a2e0
add esp, 8
push 0x8f50
call fcn.0067ac68
pop ecx
mov dword [ebp - 0x1ac], eax
test eax, eax
je 0x46fb11
mov word [ebp - 0x1c0], 0x2b4
mov edx, dword [ebp - 0x970]
mov cl, byte [edx + 0x78]
push ecx
mov eax, dword [ebp - 0x970]
mov dl, byte [eax + 0x30]
push edx
mov ecx, dword [ebp - 0x970]
mov al, byte [ecx + 0x2f]
push eax
mov edx, dword [ebp - 0x970]
mov cl, byte [edx + 0x2e]
xor edx, edx
push ecx
mov eax, dword [ebp - 0x970]
mov dl, byte [eax + 0x2b]
cmp edx, 1
sbb ecx, ecx
neg ecx
push ecx
mov eax, dword [ebp - 0x970]
mov dl, byte [eax + 0x2a]
push edx
mov ecx, dword [ebp - 0x970]
mov al, byte [ecx + 0x2c]
push eax
mov edx, dword [ebp - 0x970]
mov cl, byte [edx + 0x29]
push ecx
xor ecx, ecx
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x24]
push edx
add esp, 0xfffffff0
mov word [ebp - 0x1c0], 0x2c0
mov dword [ebp - 0x648], ecx
mov eax, dword [ebp - 0x648]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x46f7a4
mov eax, dword [ebp - 0x18]
mov ecx, esp
mov dword [ebp - 0x64c], eax
mov edx, dword [ebp - 0x64c]
mov dword [esp + 8], edx
mov dword [ebp - 0x650], ecx
mov eax, dword [ebp - 0x650]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0x1130], edx
mov ecx, dword [esp + 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x654], ecx
mov edx, dword [ebp - 0x654]
cmp eax, edx
je 0x46f83d
mov ecx, dword [ebp - 0x654]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46f83d
mov eax, dword [ebp - 0x18]
mov edx, dword [eax - 4]
mov dword [ebp - 0x658], edx
mov ecx, dword [ebp - 0x658]
push ecx
mov eax, dword [ebp - 0x658]
push eax
lea edx, [esp + 8]
push edx
call fcn.0069a874
mov dword [ebp - 0x660], eax
add esp, 0xc
mov ecx, dword [ebp - 0x660]
mov edx, esp
add ecx, 0xc
mov dword [ebp - 0x65c], ecx
mov eax, dword [ebp - 0x65c]
mov dword [esp + 8], eax
mov dword [ebp - 0x664], edx
mov ecx, dword [ebp - 0x664]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1140], eax
mov edx, dword [ebp - 0x658]
mov dword [ebp - 0x668], edx
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x66c], ecx
mov eax, dword [esp + 8]
mov dword [ebp - 0x670], eax
mov edx, dword [ebp - 0x668]
push edx
mov ecx, dword [ebp - 0x66c]
push ecx
mov eax, dword [ebp - 0x670]
push eax
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
add esp, 0xfffffff0
mov edx, dword [ebp - 0x970]
xor ecx, ecx
add edx, 0x68
mov dword [ebp - 0x618], edx
mov dword [ebp - 0x61c], ecx
mov eax, dword [ebp - 0x61c]
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x618]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x46f8d9
mov edx, dword [ebp - 0x618]
mov ecx, dword [edx + 8]
mov edx, esp
mov dword [ebp - 0x620], ecx
mov eax, dword [ebp - 0x620]
mov dword [esp + 8], eax
mov dword [ebp - 0x624], edx
mov ecx, dword [ebp - 0x624]
mov eax, dword [ecx + 8]
mov ecx, 0x6ff36c
mov dword [ebp - 0x1110], eax
mov edx, dword [esp + 8]
add edx, 0xfffffff4
mov dword [ebp - 0x628], edx
mov eax, dword [ebp - 0x628]
cmp ecx, eax
je 0x46f97e
mov edx, dword [ebp - 0x628]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46f97e
mov ecx, dword [ebp - 0x618]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 4]
mov dword [ebp - 0x62c], edx
mov ecx, dword [ebp - 0x62c]
push ecx
mov eax, dword [ebp - 0x62c]
push eax
lea edx, [esp + 8]
push edx
call fcn.0069a874
mov dword [ebp - 0x634], eax
add esp, 0xc
mov ecx, dword [ebp - 0x634]
mov edx, esp
add ecx, 0xc
mov dword [ebp - 0x630], ecx
mov eax, dword [ebp - 0x630]
mov dword [esp + 8], eax
mov dword [ebp - 0x638], edx
mov ecx, dword [ebp - 0x638]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1120], eax
mov edx, dword [ebp - 0x62c]
mov dword [ebp - 0x63c], edx
mov ecx, dword [ebp - 0x618]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x640], eax
mov edx, dword [esp + 8]
mov dword [ebp - 0x644], edx
mov ecx, dword [ebp - 0x63c]
push ecx
mov eax, dword [ebp - 0x640]
push eax
mov edx, dword [ebp - 0x644]
push edx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
add esp, 0xfffffff0
mov ecx, dword [ebp - 0x970]
xor eax, eax
add ecx, 0x58
mov dword [ebp - 0x5e8], ecx
mov dword [ebp - 0x5ec], eax
mov edx, dword [ebp - 0x5ec]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x5e8]
mov eax, dword [ecx + 8]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
jle 0x46fa1a
mov ecx, dword [ebp - 0x5e8]
mov eax, dword [ecx + 8]
mov ecx, esp
mov dword [ebp - 0x5f0], eax
mov edx, dword [ebp - 0x5f0]
mov dword [esp + 8], edx
mov dword [ebp - 0x5f4], ecx
mov eax, dword [ebp - 0x5f4]
mov edx, dword [eax + 8]
mov eax, 0x6ff36c
mov dword [ebp - 0x10f0], edx
mov ecx, dword [esp + 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x5f8], ecx
mov edx, dword [ebp - 0x5f8]
cmp eax, edx
je 0x46fabf
mov ecx, dword [ebp - 0x5f8]
push ecx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x46fabf
mov eax, dword [ebp - 0x5e8]
mov edx, dword [eax + 8]
mov ecx, dword [edx - 4]
mov dword [ebp - 0x5fc], ecx
mov eax, dword [ebp - 0x5fc]
push eax
mov edx, dword [ebp - 0x5fc]
push edx
lea ecx, [esp + 8]
push ecx
call fcn.0069a874
mov dword [ebp - 0x604], eax
add esp, 0xc
mov eax, dword [ebp - 0x604]
mov ecx, esp
add eax, 0xc
mov dword [ebp - 0x600], eax
mov edx, dword [ebp - 0x600]
mov dword [esp + 8], edx
mov dword [ebp - 0x608], ecx
mov eax, dword [ebp - 0x608]
mov edx, dword [eax + 8]
mov dword [ebp - 0x1100], edx
mov ecx, dword [ebp - 0x5fc]
mov dword [ebp - 0x60c], ecx
mov eax, dword [ebp - 0x5e8]
mov edx, dword [eax + 8]
mov dword [ebp - 0x610], edx
mov ecx, dword [esp + 8]
mov dword [ebp - 0x614], ecx
mov eax, dword [ebp - 0x60c]
push eax
mov edx, dword [ebp - 0x610]
push edx
mov ecx, dword [ebp - 0x614]
push ecx
call fcn.0069cc60
add esp, 0xc
inc dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x970]
mov edx, dword [eax + 0x20]
push edx
mov ecx, dword [ebp - 0x970]
mov al, byte [ecx + 0x28]
push eax
push esi
mov edx, dword [ebp - 0x558]
push edx
mov ecx, dword [ebp - 0x1ac]
push ecx
mov word [ebp - 0x1c0], 0x2b4
add dword [ebp - 0x1b4], 0xfffffffd
call fcn.0042d254
add esp, 0x68
mov word [ebp - 0x1c0], 0x2a8
mov eax, dword [ebp - 0x1ac]
jmp 0x46fb17
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x5e4], eax
xor eax, eax
mov word [ebp - 0x1c0], 0x230
mov edx, dword [ebp - 0x558]
add esi, 0x30
mov ecx, dword [edx + 4]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x678], eax
mov edx, dword [ebp - 0x674]
lea eax, [ebp - 0x680]
mov dword [ebp - 0x680], edx
mov ecx, dword [ebp - 0x678]
mov dword [ebp - 0x67c], ecx
push eax
lea eax, [ebp - 0x1160]
push esi
push eax
call fcn.0041e764
add esp, 0xc
mov edx, dword [ebp - 0x1158]
add edx, 0x10
add edx, 4
mov ecx, dword [ebp - 0x5e4]
mov dword [edx], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x46fc3e
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46fbf0
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff4
mov dword [ebp - 0x684], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x684]
cmp edx, ecx
je 0x46fbe7
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x684]
cmp eax, edx
je 0x46fbe0
mov ecx, dword [ebp - 0x684]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x684]
mov edx, dword [eax]
inc edx
jmp 0x46fbec
mov edx, 1
jmp 0x46fbec
mov edx, 1
test edx, edx
jne 0x46fc3e
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff4
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff4
mov dword [ebp - 0x68c], ecx
mov eax, dword [ebp - 0x68c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x690], edx
lea eax, [ebp - 0x20]
mov ecx, dword [ebp - 0x690]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x694], eax
mov edx, dword [ebp - 0x694]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1168], ecx
dec dword [ebp - 0x1b4]
mov eax, dword [ebp - 8]
test eax, eax
je 0x46fcf9
mov edx, dword [ebp - 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x46fcab
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x698], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x698]
cmp edx, ecx
je 0x46fca2
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x698]
cmp eax, edx
je 0x46fc9b
mov ecx, dword [ebp - 0x698]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x698]
mov edx, dword [eax]
inc edx
jmp 0x46fca7
mov edx, 1
jmp 0x46fca7
mov edx, 1
test edx, edx
jne 0x46fcf9
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x69c], eax
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x6a0], ecx
mov eax, dword [ebp - 0x6a0]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x6a4], edx
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x6a4]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x6a8], eax
mov edx, dword [ebp - 0x6a8]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x1178], ecx
mov eax, dword [ebp - 0x1d0]
mov dword fs:[0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret