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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xcc
mov eax, dword [0x5876e0]
xor eax, esp
mov dword [esp + 0xc8], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x18]
push ebx
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x28], eax
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x50], eax
mov eax, dword [ebx]
mov dword [esp + 0x70], ecx
xor ecx, ecx
mov dword [esp + 0x80], edx
xor edx, edx
push esi
cmp byte [eax + 3], 0x34
mov dword [esp + 0x10], edx
sete cl
mov dword [esp + 0x48], edx
mov dword [esp + 0x50], ecx
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 0x78], edx
push edi
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x28], 0
lea edx, [ecx + 1]
mov dword [esp + 0x50], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2f00
sub ecx, edx
lea eax, [ecx + 1]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x40], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2f16
sub ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0xc]
lea esi, [eax*4 - 8]
call fcn.004cdc20
test eax, eax
jne 0x4d3c88
test esi, esi
jle 0x4d3c88
mov eax, esi
cdq
mov edi, edx
mov ebx, eax
push edi
push ebx
call fcn.00459930
mov ecx, eax
add esp, 8
mov dword [esp + 0x18], ecx
test ecx, ecx
je 0x4d3c90
push esi
push 0
push ecx
call fcn.00509d10
add esp, 0xc
call fcn.004cdc20
test eax, eax
je 0x4d2f86
mov dword [esp + 0x2c], 0
jmp 0x4d3c90
push edi
push ebx
call fcn.00459930
mov edi, eax
add esp, 8
mov dword [esp + 0x2c], edi
test edi, edi
je 0x4d3c90
push esi
push 0
push edi
call fcn.00509d10
mov eax, 3
add esp, 0xc
mov dword [esp + 0x84], eax
xor esi, esi
jmp 0x4d2fc0
cmp eax, dword [ebp + 0xc]
jge 0x4d3439
cmp dword [esp + 0x4c], 0
mov ecx, dword [esp + 0x6c]
mov ebx, dword [ecx + eax*4]
mov dword [esp + 0x80], ebx
jne 0x4d3066
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2fe7
sub ecx, edx
cmp ecx, 8
jbe 0x4d3066
push 8
push str.tokenize
push ebx
call fcn.0045cca0
add esp, 0xc
test eax, eax
jne 0x4d3066
mov al, byte [ebx + 8]
test al, al
js 0x4d3066
movsx eax, al
cmp byte [eax + 0x565bd0], 0
jne 0x4d3066
lea esi, [ebx + 9]
push esi
push 0x568b20
call fcn.0045bcb0
add esp, 8
test eax, eax
jne 0x4d3041
mov edx, 7
mov dword [esp + 0x14], edx
mov esi, edx
jmp 0x4d341d
mov ecx, dword [esp + 0x74]
mov edx, esi
push eax
push dword [esp + 0x34]
lea eax, [esp + 0x54]
push eax
call fcn.004dd610
mov edx, eax
add esp, 0xc
mov dword [esp + 0x14], edx
mov esi, eax
jmp 0x4d341d
cmp dword [esp + 0x54], 0
je 0x4d33ec
lea eax, [esp + 0x10]
mov ecx, ebx
push eax
lea edx, [esp + 0x64]
call fcn.004d2750
add esp, 4
test eax, eax
je 0x4d33ec
cmp dword [esp + 0x10], 0
mov dword [esp + 0x90], str.matchinfo
mov dword [esp + 0x94], 9
mov dword [esp + 0x98], str.prefix
mov dword [esp + 0x9c], 6
mov dword [esp + 0xa0], str.compress
mov dword [esp + 0xa4], 8
mov dword [esp + 0xa8], str.uncompress
mov dword [esp + 0xac], 0xa
mov dword [esp + 0xb0], str.order
mov dword [esp + 0xb4], 5
mov dword [esp + 0xb8], str.content
mov dword [esp + 0xbc], 7
mov dword [esp + 0xc0], str.languageid
mov dword [esp + 0xc4], 0xa
mov dword [esp + 0xc8], str.notindexed
mov dword [esp + 0xcc], 0xa
je 0x4d3a3a
mov ebx, dword [esp + 0x60]
lea esi, [esp + 0x94]
xor edi, edi
mov eax, dword [esi]
cmp ebx, eax
jne 0x4d3171
push eax
push dword [esi - 4]
push dword [esp + 0x88]
call fcn.0045cca0
add esp, 0xc
test eax, eax
je 0x4d317a
inc edi
add esi, 8
cmp edi, 8
jl 0x4d3154
cmp edi, 8
jne 0x4d31b6
push dword [esp + 0x80]
push str.unrecognized_parameter:__s
push dword [esp + 0x38]
call fcn.004d2260
mov edx, 1
add esp, 0xc
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x10]
push eax
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
cmp edi, 7
ja case.default.0x4d31bb
jmp dword [edi*4 + 0x4d3e4c]
mov ebx, dword [esp + 0x10]
mov ecx, ebx
lea edx, [ecx + 1]
jmp 0x4d31d0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d31d0
sub ecx, edx
cmp ecx, 4
jne 0x4d31f1
push ecx
push str.fts3
push ebx
call fcn.0045cca0
add esp, 0xc
test eax, eax
je 0x4d320f
push dword [esp + 0x10]
push str.unrecognized_matchinfo:__s
push dword [esp + 0x38]
call fcn.004d2260
mov edx, 1
add esp, 0xc
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x10]
push eax
mov dword [esp + 0x54], 1
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov edi, dword [esp + 0x5c]
push edi
call fcn.00459c50
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x10], eax
push eax
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
push dword [esp + 0x1c]
call fcn.00459c50
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x10], eax
push eax
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov esi, dword [esp + 0x38]
push esi
call fcn.00459c50
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x10], eax
push eax
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov ebx, dword [esp + 0x10]
mov ecx, ebx
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d32c0
sub ecx, edx
cmp ecx, 3
jne 0x4d32e1
push ecx
push 0x571c04
push ebx
call fcn.0045cca0
add esp, 0xc
test eax, eax
je 0x4d3322
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d32e6
sub ecx, edx
cmp ecx, 4
jne 0x4d3307
push ecx
push str.desc
push ebx
call fcn.0045cca0
add esp, 0xc
test eax, eax
je 0x4d3322
push ebx
push str.unrecognized_order:__s
push dword [esp + 0x38]
call fcn.004d2260
mov edx, 1
add esp, 0xc
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x10]
mov al, byte [eax]
cmp al, 0x64
je 0x4d334e
cmp al, 0x44
je 0x4d334e
mov eax, dword [esp + 0x10]
push eax
mov dword [esp + 0x6c], 0
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov eax, dword [esp + 0x10]
push eax
mov dword [esp + 0x6c], 1
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov eax, dword [esp + 0x48]
push eax
call fcn.00459c50
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x48], eax
xor eax, eax
mov dword [esp + 0x10], eax
push eax
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov eax, dword [esp + 0x3c]
push eax
call fcn.00459c50
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x10], eax
push eax
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
mov dword [ecx + edx*4], eax
xor eax, eax
inc edx
mov dword [esp + 0x10], eax
push eax
mov dword [esp + 0x28], edx
call fcn.00459c50
mov esi, dword [esp + 0x18]
add esp, 4
jmp 0x4d341d
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d33f1
mov eax, dword [esp + 0x34]
sub ecx, edx
inc eax
add eax, ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x20]
mov dword [ecx + eax*4], ebx
inc eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
test esi, esi
je 0x4d2fc0
jmp 0x4d3a43
mov ebx, dword [esp + 0x48]
test ebx, ebx
je 0x4d3538
push dword [esp + 0x1c]
call fcn.00459c50
mov esi, dword [esp + 0x3c]
add esp, 4
push esi
call fcn.00459c50
add esp, 4
mov dword [esp + 0x1c], 0
cmp dword [esp + 0x20], 0
mov dword [esp + 0x38], 0
jne 0x4d355a
push dword [esp + 0x18]
call fcn.00459c50
mov ecx, dword [esp + 0x8c]
lea eax, [esp + 0x48]
add esp, 4
mov dword [esp + 0x18], 0
push dword [esp + 0x30]
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x24]
push eax
mov eax, dword [esp + 0x7c]
push ebx
mov edx, dword [eax + 4]
call fcn.004d2cb0
mov esi, eax
add esp, 0x14
mov dword [esp + 0x14], esi
test esi, esi
jne 0x4d352b
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], edi
test eax, eax
je 0x4d3521
test ebx, ebx
jle 0x4d3521
lea ecx, [ecx]
mov edx, dword [edi + esi*4]
test edx, edx
je 0x4d34f6
mov ecx, eax
call fcn.0045cc50
test eax, eax
je 0x4d3505
mov eax, dword [esp + 0x3c]
inc esi
cmp esi, ebx
jl 0x4d34e0
mov eax, dword [esp + 0x44]
mov dword [esp + 0x34], eax
jmp 0x4d3540
cmp esi, ebx
jge 0x4d351c
lea esp, [esp]
mov eax, dword [edi + esi*4 + 4]
mov dword [edi + esi*4], eax
inc esi
cmp esi, ebx
jl 0x4d3510
dec ebx
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x44]
mov dword [esp + 0x34], eax
jmp 0x4d3540
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
jmp 0x4d3a43
mov ebx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
test ebx, ebx
jne 0x4d355a
mov dword [edi], str.content
mov dword [esp + 0x34], 8
mov dword [esp + 0x20], 1
cmp dword [esp + 0x4c], 0
jne 0x4d35a7
push str.simple
push 0x568b20
call fcn.0045bcb0
add esp, 8
test eax, eax
je 0x4d3a3a
mov ebx, dword [esp + 0x30]
mov edx, str.simple
mov ecx, dword [esp + 0x74]
push eax
lea eax, [esp + 0x50]
push ebx
push eax
call fcn.004dd610
mov esi, eax
add esp, 0xc
mov dword [esp + 0x14], esi
test esi, esi
jne 0x4d3a43
jmp 0x4d35ab
mov ebx, dword [esp + 0x30]
mov edi, dword [esp + 0x5c]
lea eax, [esp + 0x64]
push eax
lea edx, [esp + 0x80]
mov ecx, edi
call fcn.004d2ba0
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
cmp esi, 1
jne 0x4d35e8
push edi
push str.error_parsing_prefix_parameter:__s
push ebx
call fcn.004d2260
add esp, 0xc
jmp 0x4d3a43
test esi, esi
jne 0x4d3a43
mov edi, dword [esp + 0x7c]
mov eax, dword [esp + 0x20]
add eax, 0x38
lea ebx, [edi + edi*2]
shl ebx, 3
lea esi, [ebx + eax*4]
add esi, eax
add esi, dword [esp + 0x70]
add esi, dword [esp + 0x40]
add esi, dword [esp + 0x34]
call fcn.004cdc20
test eax, eax
jne 0x4d3a32
test esi, esi
jle 0x4d3a32
mov eax, esi
cdq
push edx
push eax
call fcn.00459930
add esp, 8
mov dword [esp + 0x28], eax
test eax, eax
je 0x4d3a3a
push esi
mov esi, eax
push 0
push esi
call fcn.00509d10
mov eax, dword [esp + 0x94]
lea ecx, [esi + 0x118]
mov edx, dword [esp + 0x2c]
add esp, 0xc
cmp dword [esp + 0x54], 0
mov dword [esi + 0xc], eax
mov dword [esi + 0x18], edx
mov dword [esi + 0x104], 0
mov dword [esi + 0x1c], ecx
mov eax, dword [esp + 0x4c]
mov dword [esi + 0x24], eax
mov dword [esi + 0x100], 0x100000
je 0x4d3699
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x4d3699
mov eax, 1
jmp 0x4d369b
xor eax, eax
mov byte [esi + 0xe6], al
mov eax, dword [esp + 0x54]
mov byte [esi + 0xe5], al
mov byte [esi + 0xe4], al
mov eax, dword [esp + 0x68]
mov byte [esi + 0xe7], al
mov eax, dword [esp + 0x48]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x3c]
mov dword [esi + 0x2c], eax
lea eax, [ecx + edx*4]
mov ecx, dword [esp + 0x64]
push ebx
push ecx
push eax
mov dword [esi + 0x30], 0xff
mov dword [esp + 0x54], 0
mov dword [esp + 0x48], 0
mov dword [esi + 0xfc], eax
call fcn.00511d80
add esp, 0xc
mov dword [esi + 0xf8], edi
test edi, edi
jle 0x4d3743
xor ecx, ecx
jmp 0x4d3710
mov eax, dword [esi + 0xfc]
lea ecx, [ecx + 0x18]
mov word [ecx + eax - 0x14], 0x101
mov dword [ecx + eax - 0xc], 0
mov dword [ecx + eax - 0x10], 0
mov dword [ecx + eax - 8], 0
mov dword [ecx + eax - 4], 0
dec edi
jne 0x4d3710
mov eax, dword [esi + 0xfc]
mov edi, dword [esp + 0x20]
add eax, ebx
mov ebx, dword [esp + 0x6c]
add edi, eax
push dword [esp + 0x70]
mov dword [esi + 0x20], eax
mov dword [esi + 0x14], edi
push dword [ebx + 8]
push edi
call fcn.00511d80
add edi, dword [esp + 0x7c]
add esp, 0xc
mov dword [esi + 0x10], edi
push dword [esp + 0x40]
push dword [ebx + 4]
push edi
call fcn.00511d80
add edi, dword [esp + 0x4c]
add esp, 0xc
mov eax, dword [esp + 0x20]
xor ebx, ebx
test eax, eax
jle 0x4d37da
mov eax, dword [esp + 0x18]
lea edx, [esp + 0x50]
mov dword [esp + 0x50], 0
mov ecx, dword [eax + ebx*4]
call fcn.004dd4f0
mov esi, dword [esp + 0x50]
push esi
push eax
push edi
call fcn.00511d80
add esp, 0xc
mov byte [esi + edi], 0
mov ecx, edi
call fcn.004d1e50
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx + 0x1c]
mov dword [eax + ebx*4], edi
inc edi
mov eax, dword [esp + 0x20]
inc ebx
add edi, esi
cmp ebx, eax
jl 0x4d3790
mov esi, ecx
xor edx, edx
mov dword [esp + 0x40], edx
test eax, eax
jle 0x4d390c
jmp 0x4d37f0
mov eax, dword [esi + 0x1c]
lea ecx, [edx*4]
mov dword [esp + 0x60], ecx
mov edi, dword [eax + ecx]
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x4d3804
xor ebx, ebx
sub edi, ecx
cmp dword [esp + 0x24], ebx
jle 0x4d38fd
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
mov esi, dword [eax + ebx*4]
test esi, esi
je 0x4d38ec
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d3831
sub ecx, edx
cmp edi, ecx
jne 0x4d38e4
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x60]
push edi
push esi
mov eax, dword [eax + 0x1c]
push dword [eax + ecx]
call fcn.0045cca0
add esp, 0xc
test eax, eax
jne 0x4d38e4
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x40]
mov eax, dword [eax + 0x20]
mov byte [ecx + eax], 1
cmp dword [0x58c138], 0
je 0x4d38cd
mov eax, dword [0x5a22a8]
test eax, eax
je 0x4d388d
push eax
call dword [0x58c190]
add esp, 4
push esi
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push esi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d38d7
push eax
call dword [0x58c198]
mov eax, dword [esp + 0x30]
add esp, 4
mov dword [eax + ebx*4], 0
jmp 0x4d38e8
push esi
call dword [0x58c164]
add esp, 4
mov eax, dword [esp + 0x2c]
mov dword [eax + ebx*4], 0
jmp 0x4d38e8
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
inc ebx
cmp ebx, ecx
jl 0x4d3821
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x28]
inc edx
mov dword [esp + 0x40], edx
cmp edx, dword [esp + 0x20]
jl 0x4d37f0
mov ebx, dword [esp + 0x24]
xor esi, esi
test ebx, ebx
jle 0x4d394f
mov edx, dword [esp + 0x14]
lea ebx, [ebx]
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + esi*4]
test eax, eax
je 0x4d3946
push eax
push str.no_such_column:__s
push dword [esp + 0x38]
call fcn.004d2260
mov edx, 1
add esp, 0xc
mov dword [esp + 0x10], edx
inc esi
cmp esi, ebx
jl 0x4d3920
test edx, edx
jne 0x4d3994
mov esi, dword [esp + 0x38]
xor ecx, ecx
mov edi, dword [esp + 0x1c]
test esi, esi
sete cl
xor eax, eax
test edi, edi
sete al
cmp eax, ecx
je 0x4d399c
mov ecx, str.uncompress
mov dword [esp + 0x10], 1
test edi, edi
mov eax, str.compress
cmovne eax, ecx
push eax
push str.missing__s_parameter_in_fts4_constructor
push dword [esp + 0x38]
call fcn.004d2260
add esp, 0xc
jmp 0x4d399c
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x28]
lea eax, [esp + 0x10]
push eax
mov edx, esi
mov ecx, ebx
call fcn.004d28a0
add esp, 4
mov dword [ebx + 0xd8], eax
lea eax, [esp + 0x10]
mov edx, edi
mov ecx, ebx
push eax
call fcn.004d2a40
mov esi, dword [esp + 0x14]
add esp, 4
mov dword [ebx + 0xdc], eax
mov dword [esp + 0x14], esi
test esi, esi
jne 0x4d3a47
mov eax, dword [esp + 0x78]
test eax, eax
je 0x4d39f1
mov ecx, ebx
call fcn.004d2500
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
cmp dword [esp + 0x54], 0
jne 0x4d3a03
test eax, eax
jne 0x4d3a03
mov byte [ebx + 0xe5], 2
mov edx, ebx
lea ecx, [esp + 0x10]
call fcn.004d26a0
mov eax, dword [ebx + 0xec]
lea ecx, [esp + 0x10]
sub eax, 0x23
mov edx, ebx
mov dword [ebx + 0xe0], eax
call fcn.004d2380
mov esi, dword [esp + 0x10]
mov dword [esp + 0x14], esi
jmp 0x4d3a47
mov dword [esp + 0x28], 0
mov esi, 7
mov dword [esp + 0x14], esi
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
test ebx, ebx
je 0x4d3aa7
cmp dword [0x58c138], 0
je 0x4d3a9d
mov eax, dword [0x5a22a8]
test eax, eax
je 0x4d3a6b
push eax
call dword [0x58c190]
add esp, 4
push ebx
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3aac
push eax
call dword [0x58c198]
jmp 0x4d3aa4
push ebx
call dword [0x58c164]
add esp, 4
mov eax, dword [0x5a22a8]
mov ebx, dword [esp + 0x64]
test ebx, ebx
je 0x4d3b0c
cmp dword [0x58c138], 0
je 0x4d3afd
test eax, eax
je 0x4d3acb
push eax
call dword [0x58c190]
add esp, 4
push ebx
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3b0c
push eax
call dword [0x58c198]
jmp 0x4d3b04
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test edi, edi
je 0x4d3b68
cmp dword [0x58c138], 0
je 0x4d3b59
test eax, eax
je 0x4d3b27
push eax
call dword [0x58c190]
add esp, 4
push edi
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push edi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3b68
push eax
call dword [0x58c198]
jmp 0x4d3b60
push edi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
mov ebx, dword [esp + 0x38]
test ebx, ebx
je 0x4d3bc8
cmp dword [0x58c138], 0
je 0x4d3bb9
test eax, eax
je 0x4d3b87
push eax
call dword [0x58c190]
add esp, 4
push ebx
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3bc8
push eax
call dword [0x58c198]
jmp 0x4d3bc0
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
mov ebx, dword [esp + 0x48]
test ebx, ebx
je 0x4d3c28
cmp dword [0x58c138], 0
je 0x4d3c19
test eax, eax
je 0x4d3be7
push eax
call dword [0x58c190]
add esp, 4
push ebx
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3c28
push eax
call dword [0x58c198]
jmp 0x4d3c20
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
mov ebx, dword [esp + 0x3c]
test ebx, ebx
je 0x4d3c9e
cmp dword [0x58c138], 0
je 0x4d3c7c
test eax, eax
je 0x4d3c47
push eax
call dword [0x58c190]
add esp, 4
push ebx
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3c9e
push eax
call dword [0x58c198]
add esp, 4
jmp 0x4d3c99
push ebx
call dword [0x58c164]
add esp, 4
jmp 0x4d3c99
mov dword [esp + 0x18], 0
mov esi, 7
mov dword [esp + 0x14], esi
mov eax, dword [0x5a22a8]
mov ebx, dword [esp + 0x2c]
xor edi, edi
cmp dword [esp + 0x24], edi
jle 0x4d3d1c
mov ecx, dword [esp + 0x24]
mov edi, edi
mov esi, dword [ebx + edi*4]
test esi, esi
je 0x4d3d13
cmp dword [0x58c138], 0
je 0x4d3d00
test eax, eax
je 0x4d3cce
push eax
call dword [0x58c190]
add esp, 4
push esi
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push esi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3d0f
push eax
call dword [0x58c198]
jmp 0x4d3d07
push esi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
mov ecx, dword [esp + 0x24]
inc edi
cmp edi, ecx
jl 0x4d3cb0
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
test edi, edi
je 0x4d3d7c
cmp dword [0x58c138], 0
je 0x4d3d6d
test eax, eax
je 0x4d3d3b
push eax
call dword [0x58c190]
add esp, 4
push edi
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push edi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3d7c
push eax
call dword [0x58c198]
jmp 0x4d3d74
push edi
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test ebx, ebx
je 0x4d3dd3
cmp dword [0x58c138], 0
je 0x4d3dc9
test eax, eax
je 0x4d3d97
push eax
call dword [0x58c190]
add esp, 4
push ebx
call dword [0x58c16c]
sub dword [0x5a22e8], eax
add esp, 4
dec dword [0x5a230c]
push ebx
call dword [0x58c164]
mov eax, dword [0x5a22a8]
add esp, 4
test eax, eax
je 0x4d3dd3
push eax
call dword [0x58c198]
jmp 0x4d3dd0
push ebx
call dword [0x58c164]
add esp, 4
mov eax, dword [esp + 0x28]
test esi, esi
je 0x4d3e29
test eax, eax
je 0x4d3dff
push eax
call fcn.004d1fe0
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc8]
xor ecx, esp
call fcn.0050904e
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x4d3e32
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc8]
xor ecx, esp
call fcn.0050904e
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x8c]
mov dword [ecx], eax
mov ecx, dword [esp + 0xd4]
mov eax, esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0050904e
mov esp, ebp
pop ebp
ret