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

Disassembly:
sub esp, 0xd8
mov ecx, dword fs:[0x2c]
mov eax, dword [0x631650]
mov eax, dword [ecx + eax*4]
push ebx
push ebp
mov ebp, dword [eax + 0xc]
push esi
lea esi, [ebp + 0x130]
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x68]
mov dword [esp + 0xc], eax
mov ecx, dword [ebp + 0x7e8]
push edi
mov edi, dword [esi + 0xd4]
xor ebx, ebx
test ecx, ecx
mov dword [esp + 0x14], edi
je 0x4687a8
mov ecx, dword [0x6285a0]
test ecx, ecx
je 0x46878b
test eax, eax
je 0x46878b
push eax
push ebp
call fcn.00448a10
add esp, 8
test eax, eax
jne 0x46878b
push eax
push 0x4d5
call fcn.004c6390
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret
mov eax, dword [esi + 0x2e0]
test eax, eax
jne 0x4687a8
lea edx, [edi + 0x70]
mov dword [esi + 0x2e0], 0x44
mov dword [esi + 0x17c], edx
mov eax, dword [esi + 0xd0]
test eax, eax
je 0x4687d8
mov edx, dword [esi + 0x2e0]
xor eax, eax
cmp edx, 1
sete al
lea ecx, [esp + 0x10]
push eax
push ecx
push esi
push ebp
call fcn.0046c7b0
add esp, 0x10
test eax, eax
jne 0x46ada0
mov al, byte [0x6277a0]
test al, al
je 0x468812
mov eax, dword [ebp + 0x7e8]
test eax, eax
jne 0x468812
mov eax, dword [ebp + 0x620]
test ah, 0x80
jne 0x468812
mov edx, dword [esi + 0x2e0]
mov al, byte [edx + 0x6288d8]
test al, al
jle 0x468812
push 0
push 0x4c7
jmp 0x46ad94
mov eax, dword [esi + 0x2e0]
lea ecx, [eax*4 + 0x627010]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov eax, dword [esi + 0x2e0]
cmp eax, 0x45
ja case.0x468835.65
jmp dword [eax*4 + 0x46adac]
test byte [edi + 0x2c], 4
je 0x46884c
mov dword [esi + 0x118], 0
mov eax, dword [esp + 0x10]
test eax, eax
push 0
je 0x468874
mov edx, dword [esi + 0x118]
neg edx
sbb edx, edx
and edx, 0x200
push eax
inc edx
push edx
push ebp
call fcn.0046b330
add esp, 0x10
jmp 0x468899
mov ecx, dword [esi + 0x118]
mov eax, dword [str.any]
neg ecx
push 0
sbb ecx, ecx
push 0
and ecx, 0x200
push eax
inc ecx
push ecx
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x4691b0
mov edx, dword [edi + 0x28]
mov dword [ebp + 0x77c], edx
mov ecx, dword [edi + 0x24]
mov eax, dword [edi + 0x28]
add eax, ecx
mov dword [ebp + 0x778], eax
cmp eax, dword [edi + 0x24]
jae 0x4688c7
mov dword [ebp + 0x778], 0xffffffff
cmp dword [ebp + 0x778], 0xffffffff
jne 0x4688d4
and dword [edi + 0x2c], 0xffffffdf
mov eax, dword [esi + 0x118]
test eax, eax
je 0x468974
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x468932
push 0x2b0
call fcn.004965e0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ac08
mov edi, dword [esi + 0x118]
mov ecx, ebx
call fcn.0045ce10
mov dword [ebx + 8], edi
mov dword [ebx + 0xc], 0xffffffff
mov dword [ebx + 0xa8], 0
mov dword [ebx], 0x5b0934
mov byte [ebx + 0xac], 0
mov edi, ebx
jmp 0x4689ae
push 0xc0
call fcn.004965e0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ac08
mov edi, dword [esi + 0x118]
mov ecx, ebx
call fcn.0045ce10
mov dword [ebx + 8], edi
mov dword [ebx + 0xc], 0xffffffff
mov dword [ebx + 0xa8], 0
mov dword [ebx], 0x5b0914
mov edi, ebx
jmp 0x4689ae
push 8
call fcn.004965e0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ac08
mov ecx, ebx
call fcn.0045ce10
mov dword [ebx], 0x5b09bc
mov eax, dword [esp + 0x10]
test eax, eax
mov edi, ebx
je 0x4689ae
mov edx, dword [esi + 0x310]
mov dword [eax + 0x34], edx
mov eax, dword [eax]
test eax, eax
jne 0x46899f
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.00458300
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4689e4
mov ecx, dword [esp + 0x10]
push ecx
push ebp
mov ecx, 0x6263d8
call fcn.0045a030
push edi
push esi
push ebp
call fcn.0046eeb0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
test edi, edi
je 0x46ad73
mov edx, dword [edi]
push 1
mov ecx, edi
call dword [edx]
jmp 0x46ad73
mov eax, dword [esi + 0x17c]
push eax
push ebp
call fcn.0045fa20
add esp, 8
mov ebx, eax
jmp 0x46ad73
push 0x8000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esi + 0x100]
push edx
push ebp
call fcn.0046d4b0
add esp, 8
mov ebx, eax
jmp 0x46ad73
push 0x80000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push str.SHOW_NEW_MASTER
lea eax, [ebp + 0xc]
push 0x4d3
push eax
call fcn.0043a9f0
add esp, 0xc
mov ebx, 1
jmp 0x46ad73
push 0x80000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push ebp
call fcn.00442b60
add esp, 4
mov ebx, eax
jmp 0x46ad73
push 0x80000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046e6a0
add esp, 4
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 1
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
push 0x200
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.00482800
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 2
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
push 0x200
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.00482f80
add esp, 8
mov ebx, eax
jmp 0x46ad73
push 0x8000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x6260e0
call esi
mov ecx, dword [0x62858c]
inc ecx
mov dword [0x62858c], ecx
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x6260e0
call edi
mov edx, dword [0x628578]
push edx
push ebp
call fcn.0046e2c0
add esp, 8
push 0x6260e0
mov ebx, eax
call esi
mov eax, dword [0x62858c]
dec eax
mov dword [0x62858c], eax
push 0x6260e0
call edi
jmp 0x46ad73
push 0x108000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x6260e0
call esi
mov ecx, dword [0x62858c]
inc ecx
mov dword [0x62858c], ecx
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x6260e0
call edi
mov edx, dword [0x628578]
push edx
push ebp
call fcn.0044a1f0
jmp 0x468bbd
push 0x108000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046e990
add esp, 4
mov ebx, eax
jmp 0x46ad73
push 0x8000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
je 0x468c7d
or ebx, 0xffffffff
jmp 0x46ad73
push ebp
call fcn.00442ee0
add esp, 4
mov ebx, eax
jmp 0x46ad73
push 0x8000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push ebp
call fcn.00411900
add esp, 4
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x468ccb
mov ecx, dword [ebp + 0x5c4]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push 0x10
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x468d21
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
push 0
mov dword [eax], 0
mov ecx, dword [esp + 0x14]
push 0
push ecx
push 0x10
push ebp
call fcn.00451640
mov edx, dword [esp + 0x24]
add esp, 0x14
test eax, eax
mov dword [edx], esi
jne 0x46ada0
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x6260e0
call esi
mov eax, dword [0x62858c]
inc eax
mov dword [0x62858c], eax
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x6260e0
call edi
mov eax, dword [esp + 0x10]
mov ecx, dword [0x628578]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 4]
push 0
push 0
push ecx
push edx
push eax
push ebp
call fcn.00449090
add esp, 0x18
test eax, eax
jne 0x46913e
push eax
push eax
push eax
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0043ab60
add esp, 0x14
jmp 0x46913e
mov eax, dword [esi + 0x284]
and al, 1
neg al
sbb eax, eax
and eax, 0xfff0
add eax, 0x10
mov edi, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x468db1
mov ecx, dword [ebp + 0x5c4]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push edi
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov ecx, dword [esi + 0x274]
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 4]
push ecx
push eax
push ebp
call fcn.0046b490
add esp, 0xc
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x468e2d
cmp edi, 0x10000
je 0x468e2d
mov eax, dword [esp + 0x10]
mov ebx, dword [eax]
push 0
mov dword [eax], 0
mov ecx, dword [esp + 0x14]
push 0
push ecx
push edi
push ebp
call fcn.00451640
mov edx, dword [esp + 0x24]
add esp, 0x14
test eax, eax
mov dword [edx], ebx
jne 0x46ada0
mov edx, dword [esp + 0x10]
mov edi, dword [edx + 0xc]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x40
jbe 0x468e4c
mov eax, dword [edx + 8]
push eax
jmp 0x46919f
mov edi, dword [esp + 0x14]
xor ebx, ebx
mov dword [esi + 0x244], ebx
mov dword [esi + 0x240], ebx
cmp dword [edi + 0x78], ebx
je 0x468fe3
test byte [esi + 0x284], 1
jne 0x468eaf
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov ecx, dword [eax + 0xc]
push edx
mov edx, dword [eax + 4]
push ecx
push edx
call fcn.0046cac0
add esp, 0xc
test eax, eax
je 0x468eaf
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xc]
push ecx
push 0x445
add ebp, 0xc
push ebp
call fcn.0043a9f0
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
cmp eax, ebx
je 0x468ee7
push ebx
push eax
push 1
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
cmp eax, ebx
je 0x468ee7
mov ecx, dword [esi + 0x310]
mov dword [eax + 0x34], ecx
mov eax, dword [eax]
cmp eax, ebx
jne 0x468ed8
or dword [edi + 0x2c], 0x80000000
mov edx, dword [edi + 0x28]
mov dword [ebp + 0x77c], edx
mov ecx, dword [edi + 0x24]
mov eax, dword [edi + 0x28]
add eax, ecx
mov dword [ebp + 0x778], eax
cmp eax, dword [edi + 0x24]
jae 0x468f14
mov dword [ebp + 0x778], 0xffffffff
mov edx, dword [esi + 0x68]
mov eax, dword [edx]
mov dword [esi + 0x68], eax
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push edx
push ebp
call fcn.00458300
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x46ad73
push 0x58
call fcn.004965e0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ac08
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x468f5b
mov ecx, dword [ebp + 0x5c4]
mov edx, dword [esi + 0x2e8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x18], ecx
mov ecx, ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], eax
call fcn.0045ce10
mov ecx, dword [esp + 0x14]
add ecx, 0x70
xor edx, edx
mov dword [ebx + 0xc], ecx
xor eax, eax
mov dword [ebx + 0x10], edx
mov dword [ebx + 8], edx
mov dword [ebx + 0x14], edx
mov ecx, 7
lea edi, [ebx + 0x18]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x3c], ecx
lea ecx, [esi + 0x170]
push ebx
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], ecx
lea eax, [esi + 0x164]
lea ecx, [esi + 0x238]
push esi
push ebp
mov dword [ebx + 0x48], eax
mov dword [ebx + 0x4c], ecx
mov dword [ebx + 0x50], edx
mov dword [ebx], 0x5b099c
call fcn.0046eeb0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 4]
cmp eax, ebx
jne 0x468ff4
mov eax, dword [ebp + 0x5c4]
mov ecx, dword [ecx + 0xc]
push 0
push 0
lea edx, [esi + 0x164]
push edx
lea edx, [esi + 0x170]
push edx
add esi, 0x238
push esi
push ecx
push eax
push ebp
call fcn.00481540
add esp, 0x20
jmp 0x46a6b3
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x469038
mov ecx, dword [ebp + 0x5c4]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push 0x1000
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469082
mov ecx, dword [esp + 0x10]
push 0
push 0
push ecx
push 0x1000
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
je 0x469097
or ebx, 0xffffffff
jmp 0x46ad73
mov edx, dword [esp + 0x10]
add esi, 0x164
push esi
push edx
push ebp
call fcn.00459730
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x6260e0
call esi
mov eax, dword [0x62858c]
inc eax
mov dword [0x62858c], eax
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x6260e0
call edi
mov ecx, dword [0x628578]
push 1
push ecx
push ebp
call fcn.0046ded0
jmp 0x46913b
mov eax, dword [ebp + 0x638]
test eax, eax
jne 0x46915e
mov eax, dword [ebp + 0x708]
test eax, eax
jne 0x46915e
mov eax, dword [ebp + 0x710]
test eax, eax
jne 0x46915e
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x6260e0
call esi
mov eax, dword [0x62858c]
inc eax
mov dword [0x62858c], eax
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x6260e0
call edi
mov ecx, dword [0x628578]
push 1
push ecx
push ebp
call fcn.0046e000
add esp, 0xc
push 0x6260e0
call esi
mov edx, dword [0x62858c]
dec edx
mov dword [0x62858c], edx
push 0x6260e0
call edi
jmp 0x46ad73
push 0
lea eax, [ebp + 0xc]
push 0x4a8
push eax
call fcn.0043a8a0
add esp, 0xc
jmp 0x46ad73
mov edx, dword [esi + 0xf8]
test edx, edx
mov dword [esp + 0x18], 0
je 0x4691b7
cmp byte [edx], 0
je 0x46919e
or ecx, 0xffffffff
xor eax, eax
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x40
jbe 0x4691b7
push edx
lea ecx, [ebp + 0xc]
push 0x44f
push ecx
call fcn.0043a9f0
add esp, 0xc
xor ebx, ebx
jmp 0x46ad73
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
xor ebx, ebx
cmp ecx, ebx
jne 0x4691d1
mov edx, dword [ebp + 0x5c4]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
cmp dword [edi + 8], ebx
jne 0x4691e4
mov eax, dword [eax + 4]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 4]
push ebx
push ebx
lea ecx, [eax + 0x2c]
push ecx
push edx
push 0x2000
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov ecx, dword [edi + 8]
push ebx
push ebx
lea eax, [esp + 0x20]
push eax
push ecx
push 0x12
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov edx, dword [esi + 0x274]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
push edx
push ecx
push ebp
call fcn.0046b490
add esp, 0xc
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
cmp dword [eax + 4], ebx
jne 0x469258
mov edx, dword [ebp + 0x5c4]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x10]
cmp dword [0x626e68], ebx
je 0x4692a6
push ebx
push ebx
push eax
push 0x2000
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
cmp dword [esi + 0xf8], ebx
je 0x4692a6
mov eax, dword [esp + 0x18]
and eax, 0x12
cmp al, 0x12
je 0x4692a6
mov ecx, dword [esp + 0x10]
push ebx
push ebx
push ecx
push 0x12
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
push ebp
mov dword [esi + 0x244], ebx
mov dword [esi + 0x240], ebx
call fcn.0046af00
add esp, 4
test eax, eax
je 0x4692c7
or ebx, 0xffffffff
jmp 0x46ad73
mov edx, dword [esi + 0x334]
mov eax, dword [esi + 0x2f8]
mov ecx, dword [esi + 0x2e8]
push edx
mov edx, dword [esi + 0x314]
push eax
mov eax, dword [edi + 0x50]
push ecx
push edx
push eax
lea ecx, [esi + 0x134]
push ecx
lea edx, [esi + 0x128]
push edx
mov edx, dword [esp + 0x2c]
lea eax, [esi + 0x164]
push eax
lea ecx, [esi + 0x170]
push ecx
mov ecx, dword [esi + 0xf8]
push edx
mov edx, dword [edi + 8]
lea eax, [esi + 0x238]
push eax
push ecx
push edx
push ebp
call fcn.00483610
add esp, 0x38
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
test eax, eax
mov dword [esp + 0x14], eax
je 0x46942e
mov esi, dword [esp + 0x14]
mov edx, dword [esi + 4]
push 0
push 0
lea ecx, [esi + 0x2c]
push ecx
push edx
push 0x2020
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [esi]
mov edx, dword [eax + 4]
push 0
push 0
lea ecx, [eax + 0x2c]
push ecx
push edx
push 0x12
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469416
mov eax, esi
mov ecx, 0x15
lea edi, [esp + 0x34]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [eax]
xor eax, eax
push eax
push eax
mov ecx, 0x15
lea edi, [esp + 0x90]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x90], eax
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x3c]
push eax
push 0x2000
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x2c]
and eax, 0x12
cmp al, 0x12
je 0x469416
push 0
push 0
lea ecx, [esp + 0x90]
push ecx
push 0x12
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x14]
mov eax, dword [edx]
mov eax, dword [eax]
test eax, eax
mov dword [esp + 0x14], eax
jne 0x469350
mov eax, dword [esp + 0x10]
push 0
push eax
push ebp
mov ecx, 0x6263d8
call fcn.0045a5c0
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
je 0x469451
or ebx, 0xffffffff
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046cf80
add esp, 8
test eax, eax
je 0x46ad73
or ebx, 0xffffffff
jmp 0x46ad73
push 0x8000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046ebb0
add esp, 4
mov ebx, eax
jmp 0x46ad73
mov edx, dword [esp + 0x10]
push edx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
push eax
push eax
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 4]
lea ecx, [eax + 0x2c]
push ecx
push edx
push 0x20000001
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.0047dcc0
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 3
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
add esi, 0x22c
push esi
push eax
push ebp
call fcn.004831e0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 0x20000001
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
add esi, 0x22c
push esi
push eax
push ebp
call fcn.004835e0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 3
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
add esi, 0x22c
push esi
push eax
push ebp
call fcn.004835b0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 3
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
test dword [0x627834], 0x802
je 0x4696cf
mov dword [esi + 0x170], 0x628858
xor ecx, ecx
mov dword [esi + 0x178], ecx
lea edx, [esi + 0x170]
mov dword [edx + 4], edx
mov dword [esi + 0x16c], ecx
mov dword [esi + 0x164], 0x628858
lea ebx, [esi + 0x164]
mov dword [ebx + 4], ebx
mov dword [esi + 0x124], ecx
mov dword [esi + 0x11c], 0x628858
lea eax, [esi + 0x11c]
mov dword [eax + 4], eax
mov dword [esi + 0x130], ecx
lea eax, [esi + 0x128]
mov dword [eax], 0x628858
mov dword [eax + 4], eax
mov dword [esp + 0x1c], eax
xor eax, eax
push eax
push eax
push eax
push eax
push eax
add esi, 0x134
mov dword [esi + 8], ecx
push esi
mov ecx, 0x18
lea edi, [esp + 0xa0]
rep stosd dword es:[edi], eax
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x34]
push eax
push ebx
push edx
mov dword [esi], 0x628858
mov dword [esi + 4], esi
mov ecx, dword [esp + 0x34]
push ecx
lea edx, [esp + 0xb0]
push edx
push 0
push 0
push ebp
mov dword [esp + 0x104], 0xe
call fcn.00483610
add esp, 0x38
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
add esi, 0x22c
push esi
push eax
push ebp
call fcn.00483580
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov ebx, dword [esp + 0x10]
test ebx, ebx
je 0x469732
mov eax, dword [ebx + 4]
push 0
push 0
lea edx, [ebx + 0x2c]
push edx
push eax
push 4
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov ebx, dword [ebx]
test ebx, ebx
jne 0x469709
mov ebx, dword [esp + 0x10]
mov eax, dword [0x626e68]
test eax, eax
je 0x469757
push 0
push 0
push ebx
push 4
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov ebx, dword [esp + 0x10]
mov ecx, dword [edi + 0x78]
cmp ecx, dword [esi + 0x194]
je 0x46976e
push 0
push 0x422
jmp 0x46ad94
cmp dword [edi + 0x58], 1
jne 0x4697a3
mov edx, dword [esi + 0x2e8]
mov eax, dword [edi + 0x24]
mov ecx, dword [edi + 0x50]
push edx
mov edx, dword [edi + 0x1c]
push eax
push ecx
push edx
add esi, 0x18c
push esi
add edi, 0x70
push edi
push ebx
push ebp
call fcn.004866b0
add esp, 0x20
mov ebx, eax
jmp 0x46ad73
mov dword [esi + 0x2e0], 0x41
mov eax, dword [edi + 0x4c]
test eax, eax
je 0x4697bb
mov eax, str.ORDER_BY
jmp 0x4697cc
mov eax, dword [edi + 0x24]
test eax, eax
je 0x4697f1
cmp eax, 0xffffffff
je 0x4697f1
mov eax, str.LIMIT
test eax, eax
je 0x4697f1
push eax
push str.UPDATE
lea eax, [ebp + 0xc]
push 0x4c5
push eax
call fcn.0043a9f0
add esp, 0x10
mov ebx, 1
jmp 0x46ad73
mov ecx, dword [esi + 0x2e8]
mov edx, dword [edi + 0x2c]
mov eax, dword [edi + 0x1c]
push ecx
mov ecx, dword [esp + 0x14]
push edx
push eax
add esi, 0x18c
push esi
add edi, 0x70
push edi
push ecx
push ebp
call fcn.00487170
add esp, 0x1c
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push 2
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469868
mov ecx, dword [esp + 0x10]
push 0
push 0
push ecx
push 2
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov edx, dword [esi + 0x2e8]
mov ecx, dword [esp + 0x10]
push edx
lea eax, [esi + 0x198]
push eax
add esi, 0x180
push esi
push ecx
push ebp
call fcn.004602b0
add esp, 0x14
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push 0xa
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x4698da
mov ecx, dword [esp + 0x10]
push 0
push 0
push ecx
push 0xa
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
push 1
lea edx, [esi + 0x198]
push edx
add esi, 0x180
push esi
push eax
push ebp
call fcn.004602b0
add esp, 0x14
mov ebx, eax
jmp 0x46ad73
xor ebx, ebx
cmp eax, 6
mov eax, dword [esp + 0x10]
mov edi, dword [eax]
setne bl
push 0
mov dword [eax], 0
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 4]
push 0
lea ecx, [eax + 0x2c]
dec ebx
push ecx
and ebx, 0xfffffff8
push edx
add ebx, 0xa
push ebx
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469960
mov eax, dword [esp + 0x10]
push 0
push 0
push eax
push ebx
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov ecx, dword [esp + 0x10]
push 0
push edi
push 1
push ebp
mov dword [ecx], edi
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov edi, dword [esp + 0x14]
or dword [edi + 0x2c], 0x80000000
mov edx, dword [edi + 0x28]
mov dword [ebp + 0x77c], edx
mov ecx, dword [edi + 0x24]
mov eax, dword [edi + 0x28]
add eax, ecx
mov dword [ebp + 0x778], eax
cmp eax, dword [edi + 0x24]
jae 0x4699ad
mov dword [ebp + 0x778], 0xffffffff
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov ecx, dword [eax + 0xc]
push edx
mov edx, dword [eax + 4]
push ecx
push edx
call fcn.0046cac0
add esp, 0xc
test eax, eax
je 0x4699cf
or dword [edi + 0x2c], 0x40000
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
je 0x4699e8
mov ecx, dword [esi + 0x310]
mov dword [eax + 0x34], ecx
mov eax, dword [eax]
test eax, eax
jne 0x4699d9
mov edx, dword [esi + 0x68]
mov eax, dword [edx]
mov dword [esi + 0x68], eax
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.00458300
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x46ac08
push 0x38
call fcn.004965e0
add esp, 4
test eax, eax
mov dword [esp + 0x1c], eax
je 0x46ad73
mov edx, dword [esi + 0x2e8]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c]
mov edi, dword [eax + 0x20]
mov ecx, ebx
mov dword [esp + 0x20], edx
call fcn.0045ce10
mov edx, dword [esp + 0x20]
xor eax, eax
lea ecx, [esi + 0x180]
mov dword [ebx + 8], edi
mov dword [ebx + 0xc], ecx
push ebx
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], eax
mov dword [ebx], 0x5b097c
mov ecx, 7
lea edi, [ebx + 0x18]
push esi
rep stosd dword es:[edi], eax
push ebp
mov dword [ebx + 0x28], edx
call fcn.0046eeb0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 4]
push 0
push 0
lea ecx, [eax + 0x2c]
push ecx
push edx
push 8
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469abf
mov eax, dword [esp + 0x10]
push 0
push 0
push eax
push 8
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov eax, dword [ebp + 0x638]
test eax, eax
jne 0x46a65c
mov eax, dword [ebp + 0x708]
test eax, eax
jne 0x46a65c
mov eax, dword [ebp + 0x710]
test eax, eax
jne 0x46a65c
mov ecx, dword [esp + 0x10]
push 0
push ecx
push ebp
call fcn.0045f720
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push 8
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469b48
mov ecx, dword [esp + 0x10]
push 0
push 0
push ecx
push 8
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x2c]
not edx
and edx, 1
mov dword [eax + 0x30], edx
mov eax, dword [edi + 0x2c]
mov ecx, dword [edi + 0x24]
mov edx, dword [edi + 0x50]
push eax
mov eax, dword [edi + 0x1c]
push ecx
mov ecx, dword [esp + 0x18]
push edx
push eax
push ecx
push ebp
call fcn.0045ea60
add esp, 0x18
mov ebx, eax
jmp 0x46ad73
mov edx, dword [esp + 0x10]
mov esi, dword [ebp + 0x2f0]
push edx
push ebp
mov dword [esp + 0x28], esi
mov dword [esp + 0x20], 0
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
push esi
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
push eax
mov eax, dword [esp + 0x14]
push eax
push 1
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
push eax
push esi
push 8
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
test dword [ebp + 0x79c], 0x20000
je 0x469c03
mov eax, dword [edi + 0x1c]
test eax, eax
jne 0x469c03
push 0
push 0x497
jmp 0x46ad94
test esi, esi
mov edx, esi
je 0x469cca
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
inc esi
test eax, eax
mov dword [esp + 0x18], esi
mov edi, eax
je 0x469caa
mov esi, dword [edi + 0xc]
mov eax, dword [edx + 0xc]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x469c4e
test cl, cl
je 0x469c4a
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x469c4e
add eax, 2
add esi, 2
test cl, cl
jne 0x469c2a
xor eax, eax
jmp 0x469c53
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x469c8a
mov esi, dword [edx + 4]
mov eax, dword [edi + 4]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x469c81
test cl, cl
je 0x469c7d
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x469c81
add eax, 2
add esi, 2
test cl, cl
jne 0x469c5d
xor eax, eax
jmp 0x469c86
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x469c92
mov edi, dword [edi]
test edi, edi
je 0x469caa
jmp 0x469c24
test edi, edi
je 0x469caa
mov ecx, dword [edx + 0x34]
mov dword [edi + 0x34], ecx
mov dword [edx + 0x20], edi
mov edx, dword [edx]
test edx, edx
je 0x469cca
jmp 0x469c0d
mov edx, dword [edx + 0xc]
push edx
push 0x42a
add ebp, 0xc
push ebp
call fcn.0043a9f0
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret
push 0x28
call fcn.004965e0
mov esi, eax
add esp, 4
test esi, esi
je 0x469cf8
mov ecx, esi
call fcn.00418770
mov dword [esi], 0x5ac1bc
mov byte [esi + 0x23], 1
mov byte [esi + 0x22], 1
mov dword [esi + 0x14], str.NULL
jmp 0x469cfa
xor esi, esi
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0xc]
mov ebx, dword [ecx + 0x204]
push 8
add ebx, 0x70
call fcn.004965e0
add esp, 4
test eax, eax
je 0x469d26
mov dword [eax], 0x628858
mov dword [eax + 4], esi
jmp 0x469d28
xor eax, eax
test eax, eax
mov edx, dword [ebx + 4]
mov dword [edx], eax
je 0x46ac08
mov eax, dword [ebx + 4]
mov ecx, dword [eax]
mov eax, dword [ebx + 8]
mov dword [ebx + 4], ecx
inc eax
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x2c]
not edx
and edx, 1
mov dword [eax + 0x30], edx
mov dword [ebp + 0x60c], str.init
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.00458300
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x46ad73
mov esi, dword [esp + 0x20]
test esi, esi
mov eax, esi
je 0x469d8e
mov ecx, dword [eax + 0x20]
mov edx, dword [ecx + 0x20]
mov dword [eax + 0x20], edx
mov eax, dword [eax]
test eax, eax
jne 0x469d7f
mov eax, dword [ebp + 0x808]
test eax, eax
jne 0x469e09
push 0x38
call fcn.004965e0
add esp, 4
test eax, eax
je 0x469e09
mov ecx, dword [esp + 0x18]
push ecx
push esi
push ebp
mov ecx, eax
call fcn.0045f070
mov esi, eax
test esi, esi
je 0x469e09
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x2c]
mov ecx, dword [ebp + 0x79c]
push esi
or edx, ecx
mov ecx, dword [eax + 0x1c]
or edx, 0x80000100
push edx
mov edx, dword [esp + 0x18]
push 0
push 0
push 0
push 0
push ecx
add eax, 0x70
push eax
push edx
push ebp
call fcn.0046ef30
add esp, 0x28
mov ebx, eax
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
push 0
push ebp
call fcn.00456800
add esp, 8
jmp 0x46ad73
push 0
push ebp
or ebx, 0xffffffff
call fcn.00456800
add esp, 8
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push 0
push ecx
push 0x20
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov eax, dword [ebp + 0x7e8]
test eax, eax
je 0x469e54
mov eax, dword [esi + 0x31c]
test eax, eax
je 0x469e54
mov dword [esi + 0x318], 1
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
je 0x469e69
or ebx, 0xffffffff
jmp 0x46ad73
mov eax, dword [esp + 0x10]
xor edx, edx
mov dl, byte [esi + 0x318]
push edx
push eax
push ebp
call fcn.00480f00
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x469e9f
mov ecx, dword [ebp + 0x5c4]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x10]
push 0
push 0
lea edx, [eax + 0x2c]
mov eax, dword [eax + 4]
push edx
push eax
push 0x1000
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x469ee9
mov ecx, dword [esp + 0x10]
push 0
push 0
push ecx
push 0x1000
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
je 0x469efe
or ebx, 0xffffffff
jmp 0x46ad73
mov edx, dword [esp + 0x10]
add esi, 0x128
push esi
push edx
push ebp
call fcn.004597d0
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
test byte [0x627834], 4
je 0x469f39
push 0x4000
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov esi, dword [esi + 0x114]
test esi, esi
je 0x469f56
mov esi, dword [esi]
push esi
push ebp
call fcn.0047c270
add esp, 8
mov ebx, eax
jmp 0x46ad73
xor esi, esi
push esi
push ebp
call fcn.0047c270
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov eax, dword [ebp + 0x5c0]
cmp byte [eax], 0
jne 0x469f8a
push 0x100
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ad73
mov eax, dword [ebp + 0x620]
test ah, 1
je 0x469f99
xor eax, eax
jmp 0x469f9f
mov eax, dword [ebp + 0x5c0]
mov ecx, dword [esi + 0x330]
push ecx
push eax
push ebp
call fcn.0047f370
add esp, 0xc
jmp 0x46ad73
mov esi, dword [esi + 0x114]
test esi, esi
je 0x469fc3
mov esi, dword [esi]
jmp 0x469fc5
xor esi, esi
push 0x6267d0
push 2
push 0x5df9f0
push esi
push ebp
call fcn.0047fad0
add esp, 0x14
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esi + 0x114]
test eax, eax
je 0x469ff0
mov eax, dword [eax]
jmp 0x469ff2
xor eax, eax
mov edx, dword [esi + 0x2fc]
push 0x626f50
push edx
push 0x5e7108
push eax
push ebp
call fcn.0047fad0
add esp, 0x14
mov ebx, eax
jmp 0x46ad73
push ebp
call fcn.0047dee0
add esp, 4
mov ebx, eax
jmp 0x46ad73
mov ebx, dword [edi + 8]
test ebx, ebx
jne 0x46a040
mov ebx, dword [ebp + 0x5c4]
test ebx, ebx
jne 0x46a040
push ebx
push 0x416
jmp 0x46ad94
push ebx
call fcn.0046c450
push ebx
call fcn.004963c0
add esp, 8
test eax, eax
je 0x46a070
push ebx
push 0x44e
add ebp, 0xc
push ebp
call fcn.0043a9f0
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret
push 0
push 0
lea edi, [ebp + 0x7a4]
push edi
push ebx
push 1
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
cmp dword [edi], 0
jne 0x46a0cd
push ebx
push ebp
call fcn.00451aa0
add esp, 8
test eax, eax
je 0x46a0cd
mov ecx, dword [ebp + 0x5c0]
push ebx
lea eax, [ebp + 0x5cc]
push eax
push ecx
push 0x414
add ebp, 0xc
push ebp
call fcn.0043a9f0
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret
mov edx, dword [esp + 0x14]
test byte [edx + 0x2c], 4
mov esi, dword [esi + 0x114]
je 0x46a109
test esi, esi
je 0x46a0f5
mov eax, dword [esi]
push eax
push ebx
push ebp
call fcn.0047cb30
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
xor eax, eax
push eax
push ebx
push ebp
call fcn.0047cb30
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
test esi, esi
je 0x46a121
mov eax, dword [esi]
push eax
push ebx
push ebp
call fcn.0047c630
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
xor eax, eax
push eax
push ebx
push ebp
call fcn.0047c630
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov esi, dword [esi + 0x114]
test esi, esi
je 0x46a152
mov esi, dword [esi]
push esi
push ebp
call fcn.0047c450
add esp, 8
mov ebx, eax
jmp 0x46ad73
xor esi, esi
push esi
push ebp
call fcn.0047c450
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 4]
cmp byte [ebx], 0
jne 0x46a17d
push 0
push 0x416
jmp 0x46ad94
push ebx
call fcn.0046c450
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
push edx
call fcn.0046c450
push 0
push 0
lea edi, [ebp + 0x7a4]
push edi
push ebx
push 0x20000001
push ebp
call fcn.0046b060
add esp, 0x20
test eax, eax
jne 0x46ada0
mov eax, dword [edi]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x2c], eax
mov eax, dword [0x626e68]
test eax, eax
je 0x46a1e0
mov edx, dword [esp + 0x10]
push 0
push 2
push edx
push 1
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov eax, dword [esi + 0x114]
test eax, eax
je 0x46a1ee
mov eax, dword [eax]
jmp 0x46a1f0
xor eax, eax
mov ecx, dword [esi + 0x330]
mov edx, dword [esp + 0x10]
push ecx
push eax
push edx
push ebp
call fcn.0047d6a0
add esp, 0x10
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 4]
test ebx, ebx
jne 0x46a223
push ebx
push 0x416
jmp 0x46ad94
push ebx
call fcn.0046c450
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
push edx
call fcn.0046c450
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 4]
add esp, 8
test ecx, ecx
jne 0x46a24d
mov ecx, dword [ebp + 0x5c4]
mov dword [eax + 4], ecx
push 0
push 0
lea esi, [ebp + 0x7a4]
push esi
push ebx
push 1
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
mov edx, dword [esi]
mov dword [eax + 0x2c], edx
mov eax, dword [0x626e68]
test eax, eax
je 0x46a29a
mov ecx, dword [esp + 0x10]
push 0
push 2
push ecx
push 1
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push edx
push ebp
call fcn.0047e080
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov eax, dword [edi + 8]
push eax
push ebp
call fcn.0045e830
add esp, 8
jmp 0x46ad73
mov ebx, dword [esi + 0x2e8]
mov eax, dword [esi + 0x320]
dec ebx
neg ebx
sbb ebx, ebx
and ebx, 0xfffffff4
add ebx, 0xe
test eax, eax
jne 0x46a304
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 4]
push 0
push 0
push 0
push edx
or ebx, 0x200
push ebx
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
jmp 0x46a360
test byte [ebp + 0x614], 0x80
je 0x46a398
mov al, byte [0x626ee4]
test al, al
je 0x46a398
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 4]
push 0
push 0
lea ecx, [eax + 0x2c]
push ecx
push edx
push ebx
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [0x626e68]
test eax, eax
je 0x46a360
mov eax, dword [esp + 0x10]
push 0
push 0
push eax
push ebx
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov ecx, dword [esi + 0x310]
mov edx, dword [esi + 0x320]
mov eax, dword [esi + 0x2e8]
push ecx
push edx
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [esi + 0x118]
lea ecx, [esi + 0x180]
push ecx
push edx
push eax
push ebp
call fcn.00464990
add esp, 0x1c
mov ebx, eax
jmp 0x46ad73
push 0
push 0x47c
jmp 0x46ad94
add esi, 0x1a4
push esi
push ebp
call fcn.00447cd0
jmp 0x46a6f5
push ebp
call fcn.0046aed0
mov eax, dword [ebp + 0x79c]
add esp, 4
test eax, 0x400000
je 0x46a3e6
push ebp
call fcn.0046af00
mov eax, dword [ebp + 0x79c]
add esp, 4
and eax, 0xffbfffff
mov dword [ebp + 0x79c], eax
mov eax, dword [ebp + 0x820]
test eax, eax
je 0x46a3f9
push ebp
call fcn.0042e030
add esp, 4
push 0
push 0
push 0
push 0
lea edx, [ebp + 0xc]
push edx
jmp 0x46ad6b
push ebp
call fcn.0046aed0
mov eax, dword [esp + 0x14]
push eax
push ebp
call fcn.0046b440
add esp, 0xc
test eax, eax
jne 0x46ada0
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
jne 0x46ada0
mov ecx, dword [esp + 0x10]
xor esi, esi
push esi
push ecx
push 0x20001
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov ebx, dword [ebp + 0x79c]
or ebx, 0x400000
mov dword [ebp + 0x81c], 1
mov dword [ebp + 0x79c], ebx
mov edx, dword [esp + 0x10]
push edx
push ebp
call fcn.00458300
mov ebx, eax
add esp, 8
cmp ebx, esi
jne 0x46a4b2
mov eax, dword [ebp + 0x634]
push esi
push esi
push esi
lea ecx, [ebp + 0xc]
push esi
push ecx
mov dword [ebp + 0x638], eax
mov dword [ebp + 0x634], esi
call fcn.0043ab60
add esp, 0x14
mov dword [ebp + 0x81c], esi
jmp 0x46ad73
and dword [ebp + 0x79c], 0xffbfffff
mov dword [ebp + 0x81c], esi
jmp 0x46ad73
mov edx, dword [esi + 0xf8]
push edx
call fcn.004d3550
add esp, 4
test eax, eax
je 0x46a668
mov eax, dword [esi + 0xf8]
push eax
call fcn.004963c0
add esp, 4
test eax, eax
jne 0x46a668
mov eax, dword [ebp + 0x7e8]
test eax, eax
je 0x46a543
mov ecx, dword [esi + 0xf8]
push 0x626d08
push 0x627130
push ecx
call fcn.00448fc0
add esp, 0xc
test eax, eax
je 0x46a52f
mov edx, dword [esi + 0xf8]
push edx
call fcn.00448b90
add esp, 4
test eax, eax
jne 0x46a543
push 0
push 0x4d5
call fcn.004c6390
add esp, 8
jmp 0x46ad73
mov eax, dword [esi + 0xf8]
push 0
push 1
push 0
push eax
push 0x10
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ad73
mov ecx, dword [esi + 0x284]
mov edx, dword [esi + 0xf8]
push eax
push ecx
push edx
push ebp
call fcn.0045df80
add esp, 0x10
mov ebx, eax
jmp 0x46ad73
mov edx, dword [esi + 0xf8]
push edx
call fcn.004d3550
add esp, 4
test eax, eax
je 0x46a668
mov eax, dword [esi + 0xf8]
push eax
call fcn.004963c0
add esp, 4
test eax, eax
jne 0x46a668
mov eax, dword [ebp + 0x7e8]
test eax, eax
je 0x46a5fe
mov ecx, dword [esi + 0xf8]
push 0x626d08
push 0x627130
push ecx
call fcn.00448fc0
add esp, 0xc
test eax, eax
je 0x46a5ea
mov edx, dword [esi + 0xf8]
push edx
call fcn.00448b90
add esp, 4
test eax, eax
jne 0x46a5fe
push 0
push 0x4d5
call fcn.004c6390
add esp, 8
jmp 0x46ad73
mov eax, dword [esi + 0xf8]
push 0
push 1
push 0
push eax
push 0x20
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ad73
mov eax, dword [ebp + 0x638]
test eax, eax
jne 0x46a65c
mov eax, dword [ebp + 0x708]
test eax, eax
jne 0x46a65c
mov eax, dword [ebp + 0x710]
test eax, eax
jne 0x46a65c
mov ecx, dword [esi + 0x318]
mov edx, dword [esi + 0xf8]
push 0
push ecx
push edx
push ebp
call fcn.0045e1a0
add esp, 0x10
mov ebx, eax
jmp 0x46ad73
push 0
push 0x4a8
jmp 0x46ad94
mov eax, dword [esi + 0xf8]
push eax
lea ecx, [ebp + 0xc]
push 0x44e
push ecx
call fcn.0043a9f0
add esp, 0xc
jmp 0x46ad73
push 0
push 1
push 0
push str.mysql
push 2
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ad73
add esi, 0x1fc
push esi
push ebp
call fcn.00485760
add esp, 8
mov ebx, eax
test ebx, ebx
jne 0x46ad73
push eax
push eax
push eax
push eax
lea edx, [ebp + 0xc]
push edx
jmp 0x46ad6b
push 0
push 1
push 0
push str.mysql
push 8
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ad73
mov eax, dword [esi + 0x1fc]
push eax
push ebp
call fcn.00485a90
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x46ad73
push eax
push eax
push eax
push eax
lea ecx, [ebp + 0xc]
push ecx
jmp 0x46ad6b
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x46a7b3
mov eax, dword [ecx + 4]
test eax, eax
lea edi, [ecx + 0x2c]
jne 0x46a72c
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 8]
xor edx, edx
test ecx, ecx
sete dl
push 0
push edx
mov edx, dword [esi + 0x304]
push edi
push eax
mov eax, dword [esi + 0x300]
or eax, edx
or eax, 0x400
push eax
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [ebp + 0x5bc]
test eax, eax
je 0x46a80f
mov eax, dword [esi + 0x14c]
mov edx, dword [eax + 4]
test edx, edx
mov dword [esp + 0x30], eax
je 0x46a80f
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x46a7e2
mov edi, dword [edx]
mov eax, dword [ebp + 0x5bc]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [edi]
jne 0x46a7ba
test cl, cl
je 0x46a7af
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [edi + 1]
jne 0x46a7ba
add eax, 2
add edi, 2
test cl, cl
jne 0x46a78f
xor eax, eax
jmp 0x46a7bf
xor edi, edi
jmp 0x46a725
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x46a7f1
mov eax, dword [edx + 8]
test eax, eax
je 0x46a7de
mov ecx, dword [ebp + 0x610]
push ecx
push eax
call fcn.004c60a0
add esp, 8
test eax, eax
jne 0x46a7f1
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
mov edx, dword [eax + 4]
test edx, edx
mov dword [esp + 0x30], eax
jne 0x46a780
jmp 0x46a80f
push 0
push 1
push 0
push str.mysql
push 4
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x46a91e
mov ecx, dword [0x626e68]
test ecx, ecx
je 0x46a854
mov edx, dword [esi + 0x300]
mov ecx, dword [esi + 0x304]
push 0
push 0
or edx, ecx
push eax
or edx, 0x400
push edx
push ebp
call fcn.00451640
add esp, 0x14
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 0x2e0]
mov edx, dword [esi + 0x300]
xor ecx, ecx
cmp edi, 0x25
sete cl
push ecx
push edx
lea ecx, [esi + 0x158]
push ecx
add esi, 0x14c
push esi
push eax
push ebp
call fcn.0044ed80
mov ebx, eax
add esp, 0x18
test ebx, ebx
jne 0x46ad73
mov edx, dword [ebp + 0x7d0]
push eax
mov eax, dword [ebp + 0x5b0]
push edx
push eax
push ebp
mov ecx, 0x625980
call fcn.004303a0
xor ecx, ecx
mov edx, dword [0x62536c]
test edx, edx
setne cl
test ecx, ecx
je 0x46ad73
mov edx, dword [ebp + 0x7d0]
mov eax, dword [ebp + 0x5b0]
push ebx
push edx
push eax
push ebp
lea ecx, [esp + 0x44]
call fcn.004324e0
lea ecx, [esp + 0x34]
push ecx
mov ecx, 0x624d90
call fcn.0042fa80
mov eax, dword [esp + 0x64]
test eax, eax
mov dword [esp + 0x34], 0x5abeac
je 0x46a8fc
push eax
call fcn.004c65f0
add esp, 4
mov eax, dword [esp + 0x44]
test eax, eax
mov dword [esp + 0x34], 0x5abe80
je 0x46ad73
push eax
call fcn.004c65f0
add esp, 4
jmp 0x46ad73
mov eax, dword [esi + 0x160]
test eax, eax
je 0x46a945
push 0
lea edx, [ebp + 0xc]
push 0x478
push edx
call fcn.0043a8a0
add esp, 0xc
mov ebx, 1
jmp 0x46ad73
mov ecx, dword [esi + 0x2e0]
mov edx, dword [esp + 0x14]
xor eax, eax
cmp ecx, 0x25
mov ecx, dword [esi + 0x300]
sete al
lea edi, [esi + 0x14c]
push eax
mov eax, dword [edx + 8]
push ecx
push edi
push eax
push ebp
call fcn.004507d0
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x46ad73
mov ecx, dword [ebp + 0x7d0]
mov edx, dword [ebp + 0x5b0]
push eax
push ecx
push edx
push ebp
mov ecx, 0x625980
call fcn.004303a0
xor eax, eax
mov edx, dword [0x62536c]
test edx, edx
setne al
test eax, eax
je 0x46aa02
mov ecx, dword [ebp + 0x7d0]
mov edx, dword [ebp + 0x5b0]
push ebx
push ecx
push edx
push ebp
lea ecx, [esp + 0x44]
call fcn.004324e0
lea eax, [esp + 0x34]
push eax
mov ecx, 0x624d90
call fcn.0042fa80
mov eax, dword [esp + 0x64]
test eax, eax
mov dword [esp + 0x34], 0x5abeac
je 0x46a9e9
push eax
call fcn.004c65f0
add esp, 4
mov eax, dword [esp + 0x44]
test eax, eax
mov dword [esp + 0x34], 0x5abe80
je 0x46aa02
push eax
call fcn.004c65f0
add esp, 4
mov eax, dword [0x6277a4]
test eax, eax
je 0x46ad73
cmp dword [esi + 0x2e0], 0x1c
jne 0x46ad73
mov esi, dword [edi]
mov eax, dword [esi + 4]
test eax, eax
je 0x46ad73
push 0
push eax
push ebp
call fcn.0046af50
mov esi, dword [esi]
mov eax, dword [esi + 4]
add esp, 0xc
test eax, eax
jne 0x46aa29
jmp 0x46ad73
push 0x40
push ebp
call fcn.0046b2d0
add esp, 8
test eax, eax
jne 0x46ada0
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0x2dc]
push edx
push eax
push ebp
call fcn.0046cb50
add esp, 0xc
jmp 0x46ad73
mov ecx, dword [esi + 0x2d8]
push ecx
push ebp
call fcn.0046cdb0
add esp, 8
jmp 0x46ad73
mov ecx, dword [ebp + 0x5c0]
xor ebx, ebx
test ecx, ecx
je 0x46aade
mov edx, dword [esi + 0x1ec]
mov eax, dword [edx]
mov edi, ecx
mov dl, byte [edi]
mov cl, dl
cmp dl, byte [eax]
jne 0x46aad5
test cl, cl
je 0x46aad1
mov dl, byte [edi + 1]
mov cl, dl
cmp dl, byte [eax + 1]
jne 0x46aad5
add edi, 2
add eax, 2
test cl, cl
jne 0x46aab1
xor eax, eax
jmp 0x46aada
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x46aafc
push 0
push 1
push 0
push str.mysql
push 1
push ebp
call fcn.0046b060
add esp, 0x18
test eax, eax
jne 0x46ad73
mov eax, dword [esi + 0x1ec]
push eax
push ebp
call fcn.00451ce0
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push 1
push ebp
call fcn.0046b330
add esp, 0x10
test eax, eax
jne 0x46ada0
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.0045fa80
add esp, 8
mov ebx, eax
jmp 0x46ad73
mov ecx, dword [esp + 0x10]
push ecx
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov edx, dword [esp + 0x10]
push eax
push edx
push ebp
call fcn.0045fb30
add esp, 0xc
mov ebx, eax
jmp 0x46ad73
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.0046b440
add esp, 8
test eax, eax
jne 0x46ada0
mov ecx, dword [edi + 0x28]
mov edx, dword [edi + 0x24]
mov eax, dword [edi + 0x1c]
push ecx
mov ecx, dword [esi + 0x2f4]
push edx
mov edx, dword [esi + 0x17c]
push eax
mov eax, dword [esi + 0xfc]
push ecx
mov ecx, dword [esi + 0x2f0]
push edx
mov edx, dword [esp + 0x24]
push eax
push ecx
push edx
push ebp
call fcn.0045fc30
add esp, 0x24
mov ebx, eax
jmp 0x46ad73
mov eax, dword [ebp + 0x638]
test eax, eax
je 0x46abfb
push 0
push ebp
mov dword [ebp + 0x634], eax
mov dword [ebp + 0x638], 0
call fcn.00456800
add esp, 8
push ebp
call fcn.0046af00
add esp, 4
test eax, eax
je 0x46ac10
or ebx, 0xffffffff
jmp 0x46ad73
mov eax, dword [ebp + 0x79c]
mov edx, dword [ebp + 0x7c4]
and eax, 0xfbffffff
or eax, 0x200000
or edx, 1
mov dword [ebp + 0x79c], eax
mov dword [ebp + 0x7c4], edx
push 0
push 0
push 0
push 0
lea ecx, [ebp + 0xc]
push ecx
jmp 0x46ad6b
mov ecx, dword [ebp + 0x79c]
mov eax, dword [ebp + 0x7c4]
lea edx, [ebp + 0x708]
push edx
and ecx, 0xfbdfffff
and eax, 0xfffffffe
push ebp
mov dword [ebp + 0x79c], ecx
mov dword [ebp + 0x7c4], eax
call fcn.00416dd0
add esp, 8
test eax, eax
je case.0x468835.65
or ebx, 0xffffffff
jmp 0x46ad73
mov eax, dword [ebp + 0x7c4]
lea ecx, [ebp + 0x708]
push ecx
and eax, 0xfffffffe
push ebp
mov dword [ebp + 0x7c4], eax
call fcn.00416f30
add esp, 8
test eax, eax
jne 0x46aceb
test dword [ebp + 0x79c], 0x4000000
je 0x46acd5
mov eax, dword [ebp + 0x7e8]
test eax, eax
jne 0x46acd5
push 0
lea edx, [ebp + 0xc]
push 0x4ac
push edx
call fcn.0043a9d0
add esp, 0xc
jmp 0x46acee
push 0
push 0
push 0
lea eax, [ebp + 0xc]
push 0
push eax
call fcn.0043ab60
add esp, 0x14
jmp 0x46acee
or ebx, 0xffffffff
and dword [ebp + 0x79c], 0xfbdfffff
jmp 0x46ad73
mov ecx, dword [esi + 0x1dc]
push ecx
push ebp
call fcn.00417050
add esp, 8
test eax, eax
jne 0x46ac08
test dword [ebp + 0x79c], 0x4000000
je case.0x468835.65
mov eax, dword [ebp + 0x7e8]
test eax, eax
jne case.0x468835.65
push 0
lea edx, [ebp + 0xc]
push 0x4ac
push edx
call fcn.0043a9d0
add esp, 0xc
jmp 0x46ad73
mov ecx, dword [esi + 0x1dc]
push ecx
push ebp
call fcn.00417280
add esp, 8
test eax, eax
jne 0x46ac08
push eax
push eax
push eax
push eax
lea edx, [ebp + 0xc]
push edx
jmp 0x46ad6b
push 0
push 0
push 0
push 0
lea eax, [ebp + 0xc]
push eax
call fcn.0043ab60
add esp, 0x14
test ebx, ebx
mov dword [ebp + 0x60c], str.query_end
jge 0x46ada0
push 0
mov ecx, dword [ebp + 0x834]
neg ecx
sbb ecx, ecx
and ecx, 0x41d
push ecx
add ebp, 0xc
push ebp
call fcn.0043a8a0
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret