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

Disassembly:
jmp 0x4a9d00
sub esp, 0x20
mov eax, dword [0x93e25c]
push ebx
push esi
mov esi, ecx
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x3c]
push edi
call fcn.004a9c70
mov edi, eax
mov eax, dword [esi + 0x54]
xor ebx, ebx
cmp eax, ebx
je 0x4a9d29
mov eax, dword [esi + 0x38]
jmp 0x4a9d2e
mov eax, 0x73a01c
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x818], eax
mov ecx, edi
push ebp
lea ebp, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
cmp al, bl
jne 0x4a9d40
sub ecx, ebp
push ecx
mov ecx, dword [esi + 0x2c]
push edi
call fcn.00409c69
mov edx, dword [esi + 0x2c]
mov eax, dword [esi + 0x70]
mov edi, dword [esp + 0x34]
mov dword [edx + 0x3d0], eax
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x74]
mov dword [ecx + 0x3d4], edx
mov eax, dword [esi + 8]
mov dword [edi + 0x1108], eax
mov ecx, dword [esi + 0xc]
mov dword [edi + 0x110c], ecx
mov eax, dword [esi + 0x2c]
mov byte [eax + 0xb5], bl
mov dword [eax + 0x2bc], ebx
mov byte [eax + 0x2c8], bl
mov dword [eax + 0xbfc], ebx
mov byte [edi + 0x116c], bl
mov dword [edi + 0x1168], ebx
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x814]
push 0x82543c
push 0x82542c
push eax
call fcn.004018fc
add esp, 0xc
test eax, eax
je 0x4aa2c8
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x2c]
mov edx, dword [esp + 0x3c]
mov dword [ecx + 0x8e0], eax
mov dword [ecx + 0x8d8], eax
mov dword [ecx + 0x8dc], eax
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x34], edx
mov eax, dword [esi + 0x2c]
mov ecx, dword [esp + 0x38]
push 0x974678
mov dword [eax + 0x30], ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x974b10]
mov edx, dword [0x974b14]
mov ecx, eax
mov ebp, edx
add eax, 1
adc edx, ebx
mov dword [0x974b10], eax
mov dword [0x974b14], edx
mov edx, dword [esi + 0x2c]
mov dword [edx + 0xb30], ecx
push 0x974678
mov dword [edx + 0xb34], ebp
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x4c]
mov dword [eax + 0x484], ecx
movzx ebp, word [esi + 0x48]
cmp ebp, 0x4d5
mov dword [esp + 0x3c], ebp
je 0x4a9ed1
cmp dword [0x975bfc], ebx
je 0x4a9e72
push ebp
push 0x975bd8
call fcn.005e8b20
add esp, 8
test al, al
jne 0x4a9ed1
mov edx, dword [esi + 0x2c]
push ebp
push edi
push edx
call fcn.00402ca7
add esp, 0xc
test eax, eax
je 0x4a9ed1
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + 0x34]
mov edx, dword [eax + 0x30]
push ecx
push edx
push eax
call fcn.00407775
add esp, 0xc
test eax, eax
mov eax, dword [esi + 0x2c]
je 0x4a9eab
mov edx, edi
call fcn.004a5d10
jmp 0x4aa2c8
mov ecx, dword [eax + 0x30]
push ecx
push ebp
push str.Query_partially_completed_on_the_master__error_on_master:__d__and_was_aborted._There_is_a_chance_that_your_master_is_inconsistent_at_this_point._If_you_are_sure_that_your_master_is_ok__run_this_query_manually_on_the_slave_and_then_restart_the_slave_with_SET_GLOBAL_SQL_SLAVE_SKIP_COUNTER1__START_SLAVE__._Query:__s
push ebp
push edi
call fcn.004028f6
mov edx, dword [esi + 0x2c]
add esp, 0x14
mov dword [edx + 0xbfc], 1
jmp 0x4aa2c8
cmp dword [esi + 0x5c], ebx
je 0x4a9f07
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x68]
mov dword [esp + 0x34], eax
mov eax, dword [eax + 0xab8]
and eax, 0xf3ffbfff
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x34]
xor edx, edx
or edx, ebp
mov ebp, dword [esp + 0x3c]
mov dword [eax + 0xab8], ecx
mov dword [eax + 0xabc], edx
cmp dword [esi + 0x60], ebx
je 0x4a9f2b
mov eax, dword [esi + 0x2c]
mov edx, dword [eax + 0x454]
mov ecx, dword [esi + 0x6c]
xor ecx, edx
mov edx, dword [esi + 0x6c]
and ecx, 0x80
xor ecx, edx
mov dword [eax + 0x454], ecx
cmp dword [esi + 0x64], ebx
je 0x4a9fc9
lea eax, [esi + 0x78]
push eax
mov ecx, edi
call fcn.0040b0d7
test eax, eax
je 0x4a9fc9
movzx edx, word [esi + 0x78]
push 0x10
push edx
call fcn.005db370
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x494], eax
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x494]
add esp, 8
cmp eax, ebx
je 0x4aa051
movzx eax, word [esi + 0x7a]
push 0x10
push eax
call fcn.005db370
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x4a4], eax
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x4a4]
add esp, 8
cmp eax, ebx
je 0x4aa051
movzx eax, word [esi + 0x7c]
push 0x10
push eax
call fcn.005db370
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x49c], eax
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x49c]
add esp, 8
cmp eax, ebx
je 0x4aa051
mov ecx, edx
call fcn.0040b4f1
mov eax, dword [esi + 0x80]
cmp eax, ebx
je 0x4aa068
mov ecx, dword [esi + 0x84]
lea edx, [esp + 0x18]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x2c]
push edx
push eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], 0x844320
call fcn.00402be4
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x4ac], eax
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x4ac]
add esp, 8
cmp eax, ebx
lea ecx, [esp + 0x18]
jne 0x4aa063
call fcn.0040acae
push eax
push ebx
push 0x512
call fcn.005db890
mov ecx, dword [0x9731cc]
mov eax, dword [esi + 0x2c]
mov dword [eax + 0x4ac], ecx
add esp, 0xc
lea ecx, [esp + 0x18]
call fcn.00409de5
jmp 0x4aa16c
mov eax, dword [esi + 0x2c]
push edi
push eax
call fcn.00401424
add esp, 8
jmp 0x4aa16c
call fcn.00409de5
mov eax, dword [esi + 0x88]
cmp eax, ebx
je 0x4aa0bd
push eax
call fcn.0040181b
mov edx, dword [esi + 0x2c]
mov dword [edx + 0x4a8], eax
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + 0x4a8]
add esp, 4
cmp ecx, ebx
jne 0x4aa0ca
mov ecx, dword [esi + 0x88]
push ecx
push ebx
push str.Unknown_locale:__d
push 0x451
call fcn.005db940
mov edx, dword [esi + 0x2c]
add esp, 0x10
mov dword [edx + 0x4a8], 0x83d6f8
jmp 0x4aa16c
mov eax, dword [esi + 0x2c]
mov dword [eax + 0x4a8], 0x83d6f8
mov eax, dword [esi + 0x8c]
cmp eax, ebx
je 0x4aa115
push ebx
push eax
call fcn.005db370
add esp, 8
cmp eax, ebx
jne 0x4aa10a
mov edx, dword [esi + 0x8c]
push 0xfffffffffffffff6
lea ecx, [esp + 0x1c]
push ecx
push edx
call fcn.0062f2c0
lea eax, [esp + 0x24]
push eax
push ebx
push 0x4f9
call fcn.005db890
add esp, 0x18
jmp 0x4aa16c
mov ecx, dword [esi + 0x2c]
mov dword [ecx + 0x4a0], eax
jmp 0x4aa124
mov eax, dword [esi + 0x2c]
mov edx, dword [eax + 0xae4]
mov dword [eax + 0x4a0], edx
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x10], ebx
mov edx, dword [eax + 0x34]
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [eax + 0x30]
push edx
push ecx
push eax
call fcn.004020b3
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x2bc]
add esp, 0x10
cmp eax, 0x4d5
je 0x4aa16c
mov eax, edx
mov ecx, dword [eax + 0x30]
push ecx
push 0x75cb94
push 3
push eax
push 0x81d868
call fcn.00406352
add esp, 0x14
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x2bc]
cmp ebp, eax
mov dword [esp + 0x34], eax
je 0x4aa2a1
cmp ebp, ebx
je 0x4aa238
push eax
call fcn.004036a7
add esp, 4
test eax, eax
jne 0x4aa234
push ebp
call fcn.004036a7
add esp, 4
test eax, eax
jne 0x4aa234
cmp dword [esp + 0x34], ebx
je 0x4aa1bf
mov eax, dword [esi + 0x2c]
add eax, 0xb5
mov dword [esp + 0x14], eax
jmp 0x4aa1c7
mov dword [esp + 0x14], str.no_error
cmp ebp, 0x3e8
jl 0x4aa1e9
cmp ebp, 0x5bf
jg 0x4aa1e9
mov eax, dword [0x974690]
mov ecx, dword [eax + ebp*4 - 0xfa0]
mov dword [esp + 0x10], ecx
jmp 0x4aa1f1
mov dword [esp + 0x10], str.Invalid_error_code
mov edx, dword [esp + 0x38]
mov eax, dword [esi + 0x3c]
push edx
push eax
call fcn.00403a17
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
add esp, 4
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
push ebp
push eax
push str.Query_caused_different_errors_on_master_and_slave._Error_on_master:__s___d___Error_on_slave:__s___d_._Default_database:__s._Query:__s
push ebx
push edi
call fcn.004028f6
mov ecx, dword [esi + 0x2c]
add esp, 0x24
mov dword [ecx + 0xbfc], 1
jmp 0x4aa2c8
mov eax, dword [esp + 0x34]
push eax
call fcn.004036a7
add esp, 4
test eax, eax
jne 0x4aa2a1
mov eax, dword [esi + 0x2c]
cmp dword [eax + 0xbfc], ebx
jne 0x4aa258
cmp dword [eax + 0xbd4], ebx
je 0x4aa2c8
cmp dword [esp + 0x34], ebx
lea ebp, [eax + 0xb5]
jne 0x4aa269
mov ebp, str.unexpected_success_or_fatal_error
mov edx, dword [esp + 0x38]
mov eax, dword [eax + 0x814]
push edx
push eax
call fcn.00403a17
mov ecx, dword [esp + 0x3c]
add esp, 4
push eax
push ebp
push str.Error__s_on_query._Default_database:__s._Query:__s
push ecx
push edi
call fcn.004028f6
mov edx, dword [esi + 0x2c]
add esp, 0x18
mov dword [edx + 0xbfc], 1
jmp 0x4aa2c8
mov eax, dword [esi + 0x2c]
mov byte [eax + 0xb5], bl
mov dword [eax + 0x2bc], ebx
mov byte [eax + 0x2c8], bl
mov dword [eax + 0xbfc], ebx
mov byte [edi + 0x116c], bl
mov dword [edi + 0x1168], ebx
push 0x974678
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x2c]
mov dword [eax + 0x818], ebx
mov ebp, dword [esi + 0x2c]
mov ecx, dword [ebp + 0x814]
push ecx
call fcn.005d8be0
mov dword [ebp + 0x814], ebx
mov dword [ebp + 0xb74], ebx
mov edx, dword [esi + 0x2c]
mov dword [edx + 0x30], ebx
mov eax, dword [esi + 0x2c]
add esp, 4
push 0x974678
mov dword [eax + 0x34], ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esi + 0x2c]
push ebx
push ebx
push ecx
call fcn.00405b32
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 0x14]
push 1
push eax
call fcn.005d8f70
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 0xbfc]
add esp, 0x14
cmp eax, ebx
pop ebp
jne 0x4aa377
cmp dword [ecx + 0xbbc], ebx
je 0x4aa36f
mov ecx, dword [edi + 0xee0]
mov edx, dword [edi + 0xee4]
mov dword [edi + 0xed8], ecx
mov dword [edi + 0xedc], edx
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x1c]
call fcn.006cedd0
add esp, 0x20
ret 0xc
push edi
mov ecx, esi
call fcn.0040c0b3
mov ecx, dword [esp + 0x28]
pop edi
pop esi
pop ebx
call fcn.006cedd0
add esp, 0x20
ret 0xc