Function at 0x10092e00
Capabilities:
Create tcp socket
Create udp socket

Disassembly:
sub esp, 0xaf0
push ebx
push ebp
mov ebp, dword [esp + 0xafc]
mov dword [ebp + 0x398], 0x100fe6f0
mov dword [ebp], 0
mov dword [ebp + 0x2dc], 0
mov eax, dword [ebp + 0x328]
test eax, eax
push esi
push edi
jne 0x10092e49
mov ecx, dword [ebp + 0x32c]
test ecx, ecx
je 0x10092e8c
test eax, eax
jne 0x10092e49
mov eax, 0x100fea18
mov ecx, dword [ebp + 0x32c]
push ecx
push eax
lea edx, [ebp + 0x2f8]
push edx
call fcn.10092300
mov eax, dword [ebp + 0x328]
push eax
call fcn.100966f0
mov ecx, dword [ebp + 0x32c]
push ecx
call fcn.100966f0
mov dword [ebp + 0x32c], 0
add esp, 0x14
mov dword [ebp + 0x328], 0
mov edx, dword [esp + 0xb08]
test edx, edx
je 0x10092e9c
cmp byte [edx], 0
jne 0x10092ea9
mov edx, dword [ebp + 0x310]
mov dword [esp + 0xb08], edx
mov eax, dword [esp + 0xb0c]
test eax, eax
mov esi, 0x100d8174
je 0x10092ebe
cmp byte [eax], 0
jne 0x10092ed6
mov eax, dword [ebp + 0x314]
test eax, eax
mov dword [esp + 0xb0c], eax
jne 0x10092ed6
mov dword [esp + 0xb0c], esi
mov eax, dword [esp + 0xb10]
test eax, eax
jne 0x10092f18
mov eax, dword [ebp + 0x318]
test eax, eax
mov dword [esp + 0xb10], eax
jne 0x10092f18
push str.MYSQL_PWD
call fcn.10080920
add esp, 4
test eax, eax
mov dword [esp + 0xb10], eax
jne 0x10092f11
mov dword [esp + 0xb10], esi
mov edx, dword [esp + 0xb08]
mov eax, dword [esp + 0xb14]
test eax, eax
je 0x10092f28
cmp byte [eax], 0
jne 0x10092f35
mov eax, dword [ebp + 0x320]
mov dword [esp + 0xb14], eax
mov eax, dword [esp + 0xb18]
test eax, eax
jne 0x10092f4d
mov ecx, dword [ebp + 0x304]
mov dword [esp + 0xb18], ecx
mov eax, dword [esp + 0xb1c]
test eax, eax
jne 0x10092f65
mov eax, dword [ebp + 0x31c]
mov dword [esp + 0xb1c], eax
mov byte [ebp + 0x36d], 1
mov dword [ebp + 0x2ec], 2
mov eax, dword [ebp + 0x308]
test eax, eax
mov edi, 4
je 0x10092f8d
cmp eax, edi
jne 0x10093017
test edx, edx
je 0x10092fc5
mov esi, str.localhost
mov eax, edx
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x10092fbc
test cl, cl
je 0x10092fb8
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x10092fbc
add eax, 2
add esi, 2
test cl, cl
jne 0x10092f98
xor eax, eax
jmp 0x10092fc1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x10093017
mov ecx, dword [ebp + 0x2f8]
push ecx
push ebp
push ebp
call fcn.10091ad0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x10092ff0
cmp dword [ebp + 0x308], edi
je 0x10093b9d
mov edx, dword [esp + 0xb08]
jmp 0x10093017
mov dword [ebp + 0x308], edi
mov edx, dword [ebp + 0x34c]
mov eax, dword [str.Shared_memory___lu_]
mov dword [esp + 0xb1c], 0
mov dword [esp + 0xb08], edx
mov dword [esp + 0x18], eax
cmp dword [ebp], 0
mov edi, 3
jne 0x10093393
cmp dword [ebp + 0x308], edi
je 0x10093093
test edx, edx
je 0x10093066
mov esi, 0x100dad3c
mov eax, edx
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x1009305d
test cl, cl
je 0x10093059
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x1009305d
add eax, 2
add esi, 2
test cl, cl
jne 0x10093039
xor eax, eax
jmp 0x10093062
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x10093093
mov al, byte [0x101d62e4]
test al, al
jne 0x1009318a
mov eax, dword [esp + 0xb1c]
test eax, eax
jne 0x10093093
test edx, edx
jne 0x1009318a
call fcn.10093be0
test al, al
je 0x10093183
mov eax, dword [ebp + 0x2f8]
lea ecx, [esp + 0xb1c]
push ecx
lea edx, [esp + 0xb0c]
push edx
push eax
push ebp
call fcn.10091870
add esp, 0x10
cmp eax, 0xffffffff
jne 0x1009314e
cmp dword [ebp + 0x308], edi
je 0x10093b9d
mov edx, dword [esp + 0xb08]
test edx, edx
je 0x1009310b
mov esi, 0x100dad3c
mov eax, edx
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x100930fe
test cl, cl
je 0x100930fa
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x100930fe
add eax, 2
add esi, 2
test cl, cl
jne 0x100930da
xor eax, eax
jmp 0x10093103
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x10093b9d
mov eax, dword [esp + 0xb1c]
test eax, eax
je 0x1009318a
mov esi, str.MySQL
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x1009313f
test cl, cl
je 0x1009313b
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x1009313f
add eax, 2
add esi, 2
test cl, cl
jne 0x1009311b
xor eax, eax
jmp 0x10093144
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x10093b9d
jmp 0x1009318a
push eax
call fcn.100959c0
mov edx, dword [esp + 0xb20]
push edx
mov dword [ebp], eax
mov eax, dword [esp + 0xb10]
lea ecx, [esp + 0x34]
mov dword [esp + 0x20], ecx
mov ecx, dword [str.__.100s_via_named_pipe]
push eax
push ecx
lea edx, [esp + 0x3c]
push edx
call fcn.10082e9b
add esp, 0x14
mov edx, dword [esp + 0xb08]
cmp dword [ebp], 0
jne 0x10093393
mov eax, dword [ebp + 0x308]
test eax, eax
je 0x100931a7
cmp eax, 1
jne 0x10093393
mov eax, dword [esp + 0xb18]
test eax, eax
mov dword [esp + 0xb1c], 0
jne 0x100931c9
mov eax, dword [0x101d62c8]
mov dword [esp + 0xb18], eax
test edx, edx
jne 0x100931d9
mov edx, str.localhost
mov dword [esp + 0xb08], edx
push edx
mov edx, dword [str.__.100s_via_TCP_IP]
push edx
lea eax, [esp + 0x34]
lea ecx, [esp + 0x34]
push eax
mov dword [esp + 0x24], ecx
call fcn.10082e9b
add esp, 0xc
push 0
push 1
push 2
call sub.WS2_32.dll_socket
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x1009324d
mov dword [ebp + 0x25c], 0x7d4
mov ecx, dword [str.HY000]
push ecx
lea edx, [ebp + 0x254]
push edx
call fcn.10095810
add esp, 8
call sub.WS2_32.dll_WSAGetLastError
push eax
mov eax, dword [ebp + 0x25c]
mov ecx, dword [eax*4 + 0x100fcb64]
push ecx
lea edx, [ebp + 0x54]
push edx
call fcn.10082e9b
add esp, 0xc
jmp 0x10093b9d
push 0
push 1
push ebx
call fcn.10095960
mov ecx, dword [esp + 0xb14]
mov dword [ebp], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
add esp, 0xc
mov dword [esp + 0x24], eax
push ecx
mov dword [esp + 0x2c], eax
mov word [esp + 0x20], 2
call sub.WS2_32.dll_inet_addr
cmp eax, 0xffffffff
je 0x10093291
mov dword [esp + 0x20], eax
jmp 0x10093325
lea edx, [esp + 0x14]
push edx
mov edx, dword [esp + 0xb0c]
push 0x800
lea eax, [esp + 0x308]
push eax
lea ecx, [esp + 0xfc]
push ecx
push edx
call fcn.10098cc0
add esp, 0x14
test eax, eax
jne 0x10093305
call fcn.10098cf0
mov dword [ebp + 0x25c], 0x7d5
mov eax, dword [str.HY000]
push eax
lea ecx, [ebp + 0x254]
push ecx
call fcn.10095810
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0xb10]
mov ecx, dword [str.Unknown_MySQL_Server_Host___.100s___d_]
push edx
push eax
push ecx
lea edx, [ebp + 0x54]
push edx
call fcn.10082e9b
add esp, 0x18
jmp 0x10093b9d
movsx ecx, word [eax + 0xa]
mov eax, dword [eax + 0xc]
mov esi, dword [eax]
mov edx, ecx
shr ecx, 2
lea edi, [esp + 0x20]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.10098cf0
mov eax, dword [esp + 0xb18]
push eax
call sub.WS2_32.dll_htons
mov ecx, dword [ebp + 0x2f8]
push ecx
push 0x10
lea edx, [esp + 0x24]
push edx
push ebx
mov word [esp + 0x2e], ax
call fcn.10091850
add esp, 0x10
test eax, eax
je 0x10093393
mov dword [ebp + 0x25c], 0x7d3
mov eax, dword [str.HY000]
push eax
lea ecx, [ebp + 0x254]
push ecx
call fcn.10095810
add esp, 8
call sub.WS2_32.dll_WSAGetLastError
mov edx, dword [esp + 0xb08]
push eax
mov eax, dword [str.Cant_connect_to_MySQL_server_on___.100s___d_]
push edx
push eax
lea ecx, [ebp + 0x54]
push ecx
call fcn.10082e9b
jmp 0x10093b9a
mov eax, dword [ebp]
test eax, eax
jne 0x100933c2
mov edx, dword [str.HY000]
push edx
lea eax, [ebp + 0x254]
push eax
call fcn.10095810
mov dword [ebp + 0x25c], 0x7fe
mov ecx, dword [str.Wrong_or_unknown_protocol]
jmp 0x10093b90
push eax
push ebp
call fcn.10095cb0
add esp, 8
test al, al
mov eax, dword [ebp]
je 0x10093419
push eax
call dword [eax + 0x54]
mov dword [ebp], 0
mov dword [ebp + 0x25c], 0x7d8
mov eax, dword [str.HY000]
push eax
lea ecx, [ebp + 0x254]
push ecx
call fcn.10095810
mov edx, dword [ebp + 0x25c]
mov eax, dword [edx*4 + 0x100fcb64]
push eax
lea ecx, [ebp + 0x54]
push ecx
call fcn.10095810
add esp, 0x14
jmp 0x10093b9d
push 1
push eax
call dword [eax + 0x6c]
mov eax, dword [ebp + 0x2fc]
add esp, 8
test eax, eax
je 0x1009342f
mov dword [ebp + 0x2c], eax
mov eax, dword [ebp + 0x300]
test eax, eax
je 0x1009343c
mov dword [ebp + 0x28], eax
mov eax, dword [ebp + 0x350]
test eax, eax
je 0x10093449
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x2f8]
test eax, eax
mov dword [ebp + 0x2e4], 0xa
je 0x100934a1
mov edx, dword [ebp]
push eax
push edx
call fcn.100989b0
add esp, 8
test al, al
je 0x100934a1
mov dword [ebp + 0x25c], 0x7dd
mov eax, dword [str.HY000]
push eax
lea ecx, [ebp + 0x254]
push ecx
call fcn.10095810
mov edx, dword [ebp + 0x25c]
mov eax, dword [edx*4 + 0x100fcb64]
push eax
lea ecx, [ebp + 0x54]
push ecx
jmp 0x10093b95
push ebp
call fcn.10091ed0
mov ebx, eax
add esp, 4
cmp ebx, 0xffffffff
je 0x10093b9d
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0xa
mov dword [ebp + 0x2e4], ecx
je 0x10093505
mov edx, dword [str.HY000]
push edx
lea eax, [ebp + 0x254]
push eax
call fcn.10095810
mov ecx, dword [ebp + 0x2e4]
push 0xa
mov dword [ebp + 0x25c], 0x7d7
mov edx, dword [str.Protocol_mismatch._Server_Version___d_Client_Version___d]
push ecx
push edx
lea eax, [ebp + 0x54]
push eax
call fcn.10082e9b
add esp, 0x18
jmp 0x10093b9d
inc eax
push eax
call fcn.10098790
mov esi, eax
mov ecx, dword [esi + 1]
push 8
add esi, 5
lea eax, [ebp + 0x36e]
push esi
push eax
mov dword [ebp + 0x2d0], ecx
call fcn.10095c70
mov ecx, dword [ebp + 0x10]
add esi, 9
mov eax, esi
sub eax, ecx
lea edx, [eax + 1]
add esp, 0x10
cmp ebx, edx
jb 0x10093548
xor edx, edx
mov dx, word [esi]
mov dword [ebp + 0x2e0], edx
add eax, 0x12
cmp ebx, eax
jb 0x10093565
movsx eax, byte [esi + 2]
xor edx, edx
mov dword [ebp + 0x2f0], eax
mov dx, word [esi + 3]
mov dword [ebp + 0x2ec], edx
add esi, 0x12
mov eax, esi
sub eax, ecx
add eax, 0xd
cmp ebx, eax
jb 0x10093587
push 0xc
lea ecx, [ebp + 0x376]
push esi
push ecx
call fcn.10095c70
add esp, 0xc
jmp 0x10093591
and dword [ebp + 0x2e0], 0xffff7fff
mov al, byte [ebp + 0x364]
test al, al
je 0x100935de
mov edx, dword [esp + 0xb10]
cmp byte [edx], 0
je 0x100935de
mov eax, dword [ebp + 0x2e0]
test ah, 0x80
jne 0x100935de
mov eax, dword [str.HY000]
push eax
lea ecx, [ebp + 0x254]
push ecx
call fcn.10095810
mov dword [ebp + 0x25c], 0x800
mov edx, dword [str.Connection_using_old__pre_4.1.1__authentication_protocol_refused__client_option_secure_auth_enabled_]
push edx
lea eax, [ebp + 0x54]
push eax
jmp 0x10093b95
mov ebx, dword [ebp + 0x334]
test ebx, ebx
mov eax, dword [ebp + 0x2f0]
mov dword [esp + 0x14], eax
je 0x10093642
mov eax, dword [ebp + 0x330]
test eax, eax
mov edi, dword [0x101d62dc]
je 0x10093607
mov dword [0x101d62dc], eax
mov ecx, dword [ebp + 0x334]
push 0x10
push 0x20
push ecx
call fcn.100984e0
add esp, 0xc
test eax, eax
mov dword [ebp + 0x290], eax
je 0x10093632
mov edx, dword [eax]
mov dword [esp + 0x14], edx
mov dword [0x101d62dc], edi
jmp 0x1009369b
mov dword [esp + 0x14], 0
mov dword [0x101d62dc], edi
jmp 0x1009369b
test eax, eax
je 0x10093687
push 0xa
lea ecx, [esp + 0xe4]
push ecx
push eax
lea ebx, [esp + 0xec]
call fcn.10095b80
xor edx, edx
mov dl, byte [ebp + 0x2f0]
push 0
push edx
call fcn.100983d0
add esp, 0x14
test eax, eax
mov dword [ebp + 0x290], eax
jne 0x1009369b
mov eax, dword [0x100ff59c]
mov dword [ebp + 0x290], eax
jmp 0x1009369b
mov ecx, dword [0x100ff59c]
mov edx, ecx
mov dword [ebp + 0x290], ecx
mov eax, dword [edx]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x290]
test eax, eax
jne 0x10093748
mov dword [ebp + 0x25c], 0x7e3
mov ecx, dword [str.HY000]
push ecx
lea edx, [ebp + 0x254]
push edx
call fcn.10095810
mov eax, dword [ebp + 0x330]
add esp, 8
test eax, eax
je 0x10093702
test ebx, ebx
jne 0x100936dc
mov ebx, str.unknown
push eax
mov eax, dword [ebp + 0x25c]
mov ecx, dword [eax*4 + 0x100fcb64]
push ebx
push ecx
lea edx, [ebp + 0x54]
push 0x1ff
push edx
call fcn.10098570
add esp, 0x14
jmp 0x10093b9d
lea eax, [esp + 0x100]
push eax
call fcn.10097a60
add esp, 4
test ebx, ebx
jne 0x1009371b
mov ebx, str.unknown
mov edx, dword [ebp + 0x25c]
mov eax, dword [edx*4 + 0x100fcb64]
lea ecx, [esp + 0x100]
push ecx
push ebx
push eax
lea ecx, [ebp + 0x54]
push 0x1ff
push ecx
call fcn.10098570
add esp, 0x14
jmp 0x10093b9d
mov eax, dword [esp + 0xb1c]
test eax, eax
je 0x10093760
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
jmp 0x10093765
mov ecx, 1
sub esi, dword [ebp + 0x10]
push 0
push esi
mov esi, dword [esp + 0x20]
lea eax, [ebp + 0x280]
push eax
push ecx
or ecx, 0xffffffff
lea edi, [ebp + 0x27c]
push edi
mov edi, dword [esp + 0xb1c]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
or ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
lea ebx, [ebp + 0x270]
push ebx
not ecx
push ecx
lea edx, [ebp + 0x284]
push edx
push eax
call fcn.100979f0
add esp, 0x28
test eax, eax
je 0x10093b6d
mov edi, dword [esp + 0xb0c]
push 0
push edi
call fcn.10096740
add esp, 8
test eax, eax
mov dword [ebp + 0x274], eax
je 0x10093b6d
mov edx, dword [esp + 0xb10]
push 0
push edx
call fcn.10096740
add esp, 8
test eax, eax
mov dword [ebp + 0x278], eax
je 0x10093b6d
mov eax, dword [ebp + 0x284]
push esi
push eax
call fcn.10095810
mov ecx, dword [esp + 0xb10]
mov edx, dword [ebx]
push ecx
push edx
call fcn.10095810
mov eax, dword [esp + 0xb2c]
add esp, 0x10
test eax, eax
je 0x10093835
push eax
mov eax, dword [ebp + 0x27c]
push eax
call fcn.10095810
add esp, 8
jmp 0x1009383f
mov dword [ebp + 0x27c], 0
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x280]
inc ecx
push ecx
push edx
call fcn.10095810
mov edx, dword [ebp + 0x30c]
mov ecx, dword [esp + 0xb28]
mov eax, dword [esp + 0xb20]
or edx, 0xa285
or ecx, edx
add esp, 8
test ecx, 0x10000
mov dword [ebp + 0x2d8], eax
je 0x10093883
or ecx, 0x20000
mov ebx, dword [esp + 0xb14]
test ebx, ebx
je 0x10093891
or ecx, 8
mov eax, dword [ebp + 0x2e0]
or eax, 0xfffff5df
and ecx, eax
test ch, 2
mov dword [esp + 0xb20], ecx
je 0x100938e2
mov edx, dword [ebp + 0x1c]
mov al, byte [esp + 0x14]
mov dword [esp + 0x30], edx
xor edx, edx
mov dword [esp + 0x35], edx
mov dword [esp + 0x39], edx
mov dword [esp + 0x3d], edx
mov dword [esp + 0x41], edx
mov dword [esp + 0x45], edx
mov word [esp + 0x49], dx
mov dword [esp + 0x2c], ecx
mov byte [esp + 0x34], al
mov byte [esp + 0x4b], dl
lea esi, [esp + 0x4c]
jmp 0x10093905
mov al, byte [ebp + 0x1c]
mov byte [esp + 0x2e], al
mov eax, dword [ebp + 0x1c]
mov edx, eax
shr edx, 8
shr eax, 0x10
mov word [esp + 0x2c], cx
mov byte [esp + 0x2f], dl
mov byte [esp + 0x30], al
lea esi, [esp + 0x31]
test edi, edi
mov dword [ebp + 0x2dc], ecx
je 0x10093922
cmp byte [edi], 0
je 0x10093922
push 0x10
push edi
push esi
call fcn.10095c70
add esp, 0xc
jmp 0x1009392b
push esi
call fcn.10094c80
add esp, 4
push esi
call fcn.10098790
mov edi, dword [esp + 0xb14]
mov esi, eax
mov al, byte [edi]
add esp, 4
inc esi
test al, al
je 0x1009397f
mov eax, dword [ebp + 0x2e0]
test ah, 0x80
je 0x10093969
push edi
lea eax, [ebp + 0x36e]
mov byte [esi], 0x14
push eax
inc esi
push esi
call fcn.100978f0
add esp, 0xc
add esi, 0x14
jmp 0x10093983
push edi
lea eax, [ebp + 0x36e]
push eax
push esi
call fcn.100977e0
add esp, 0xc
add esi, 9
jmp 0x10093983
mov byte [esi], 0
inc esi
test ebx, ebx
je 0x100939af
test byte [ebp + 0x2e0], 8
je 0x100939af
push 0x40
push ebx
push esi
call fcn.10095c70
inc eax
push 0x10
push ebx
mov esi, eax
call fcn.10096740
add esp, 0x14
mov dword [ebp + 0x28c], eax
xor ebx, ebx
lea eax, [esp + 0x2c]
sub esi, eax
push esi
lea ecx, [esp + 0x30]
push ecx
push ebp
call fcn.10095e90
add esp, 0xc
test al, al
jne 0x10093b44
push ebp
call fcn.10095e50
add esp, 4
test al, al
jne 0x10093b44
push ebp
call fcn.10091ed0
add esp, 4
cmp eax, 0xffffffff
je 0x10093b9d
cmp eax, 1
jne 0x10093a89
mov edx, dword [ebp + 0x10]
cmp byte [edx], 0xfe
jne 0x10093a89
mov eax, dword [ebp + 0x2e0]
test ah, 0x80
je 0x10093a89
push edi
lea eax, [ebp + 0x36e]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.100977e0
push 9
lea ecx, [esp + 0x3c]
push ecx
push ebp
call fcn.10095e90
add esp, 0x18
test al, al
jne 0x10093a55
push ebp
call fcn.10095e50
add esp, 4
test al, al
jne 0x10093a55
push ebp
call fcn.10091ed0
add esp, 4
cmp eax, 0xffffffff
jne 0x10093a89
jmp 0x10093b9d
mov dword [ebp + 0x25c], 0x7dd
mov edx, dword [str.HY000]
push edx
lea eax, [ebp + 0x254]
push eax
call fcn.10095810
mov ecx, dword [ebp + 0x25c]
mov edx, dword [ecx*4 + 0x100fcb64]
push edx
lea eax, [ebp + 0x54]
push eax
jmp 0x10093b95
test byte [esp + 0xb20], 0x20
je 0x10093a97
mov byte [ebp + 0x38], 1
test ebx, ebx
je 0x10093aaa
push ebx
push ebp
call fcn.10093e20
test eax, eax
jne 0x10093b9d
mov eax, dword [ebp + 0x324]
test eax, eax
je 0x10093b21
mov esi, dword [eax]
mov ecx, dword [eax + 4]
mov dl, byte [ebp + 0x36d]
lea ebx, [esi + ecx*4]
cmp esi, ebx
mov byte [esp + 0x13], dl
mov byte [ebp + 0x36d], 0
jae 0x10093b17
mov edx, dword [esi]
or ecx, 0xffffffff
xor eax, eax
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
push ebp
call fcn.10094320
test eax, eax
jne 0x10093b9d
mov eax, dword [ebp + 0x294]
test eax, eax
je 0x10093b10
push ebp
call fcn.100944c0
add esp, 4
test eax, eax
je 0x10093b9d
push eax
call fcn.10092230
add esi, 4
cmp esi, ebx
jb 0x10093ad1
mov al, byte [esp + 0x13]
mov byte [ebp + 0x36d], al
mov al, byte [ebp + 0x357]
test al, al
je 0x10093b35
push ebp
call fcn.10094920
test al, al
jne 0x10093b9d
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0xaf0
ret 0x20
mov ecx, dword [str.HY000]
push ecx
lea edx, [ebp + 0x254]
push edx
call fcn.10095810
mov dword [ebp + 0x25c], 0x7dd
mov eax, dword [str.Lost_connection_to_MySQL_server_during_query]
push eax
lea ecx, [ebp + 0x54]
push ecx
jmp 0x10093b95
mov edx, dword [str.HY000]
push edx
lea eax, [ebp + 0x254]
push eax
call fcn.10095810
mov dword [ebp + 0x25c], 0x7d8
mov ecx, dword [str.MySQL_client_run_out_of_memory]
push ecx
lea edx, [ebp + 0x54]
push edx
call fcn.10095810
add esp, 0x10
push ebp
call fcn.10092200
push ebp
call fcn.10093f70
mov eax, dword [esp + 0xb28]
add esp, 8
test eax, 0x80000000
jne 0x10093bc3
push ebp
call fcn.10093e80
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xaf0
ret 0x20