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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xb0
mov eax, dword [esp + 0xc4]
mov ebx, dword [edx + 0x28]
mov ebp, dword [esp + 0xd4]
mov esi, dword [esp + 0xc8]
mov edi, ecx
mov dword [esp + 0x74], edx
mov dword [esp + 0x14], eax
cmp ebx, 5
mov eax, ebx
jb 0x49acb6
mov eax, dword [edx + 4]
cmp eax, ebp
jne 0x49b2d7
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x28]
cmp eax, 5
mov dword [esp + 0x28], eax
jb 0x49acd5
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x49b2d7
mov eax, dword [esi + 0x28]
cmp eax, 5
mov dword [esp + 0x48], eax
jb 0x49acec
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x49b2d7
mov eax, dword [edi + 0x28]
mov dword [esp + 0x34], edx
lea ecx, [edi + 0x28]
mov dword [esp], ecx
cmp eax, 5
mov edx, eax
jb 0x49ad0e
mov edx, dword [edi + 4]
lea ecx, [edi + 4]
test edx, edx
je 0x49ad1d
mov eax, dword [esp]
mov dword [ecx], 0
mov eax, dword [eax]
lea edx, [ebp + ebp]
cmp eax, 5
mov dword [esp + 0x24], edx
jb 0x49ad37
mov eax, dword [edi + 4]
cmp eax, edx
jae 0x49ad52
mov edx, dword [esp + 0x24]
jmp 0x49ad3e
mov ecx, dword [esp]
cmp eax, edx
jae 0x49ad59
mov ecx, edx
sub ecx, eax
push ecx
push 0
push 0
push edi
call fcn.00490a30
add esp, 0x10
jmp 0x49ad63
mov edx, dword [esp + 0x24]
lea ecx, [edi + 4]
cmp eax, edx
jbe 0x49ad63
mov eax, dword [esp + 0x24]
mov dword [ecx], eax
test ebp, ebp
mov dword [esp + 0x2c], edi
je 0x49b1d3
lea eax, [esi + 8]
cmp ebx, 5
mov dword [esp + 0x18], eax
jb 0x49ad87
mov ebx, dword [esp + 0x34]
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 8]
jmp 0x49ad90
mov eax, dword [esp + 0x34]
mov ecx, ebx
add eax, 8
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x48]
mov edx, dword [esi + 4]
mov esi, dword [esi + 8]
mov ebx, dword [esp + 0x18]
cmp ebp, ecx
cmovb ecx, ebp
cmp eax, 5
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], edx
cmovae eax, edx
cmovae ebx, esi
cmp ebp, eax
mov esi, ebx
mov ebx, ecx
cmovb eax, ebp
cmp dword [esp + 0x28], 5
mov dword [esp + 0x60], eax
jb 0x49ade0
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x14], eax
jmp 0x49ade5
add dword [esp + 0x14], 8
lea eax, [edi + 8]
mov dword [esp + 0x6c], esi
xor edx, edx
xor esi, esi
mov dword [esp + 0x30], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x5c], ebx
mov dword [esp + 4], eax
nop dword [eax]
lea eax, [esi + ebp]
mov ebp, dword [esp + 4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp]
mov eax, dword [eax]
cmp eax, 5
mov ecx, eax
jb 0x49ae2d
mov ecx, dword [edi + 4]
mov ebp, dword [edi + 8]
cmp ecx, dword [esp + 0x1c]
jb 0x49b2ba
cmp dword [esp + 0x28], esi
jbe 0x49b293
test ebx, ebx
mov dword [esp + 0x58], esi
mov dword [esp + 0x54], edx
je 0x49af50
mov eax, dword [esp + 0x14]
xor edi, edi
mov ecx, dword [eax + esi*8]
mov eax, dword [eax + esi*8 + 4]
mov esi, ebp
add esi, edx
xor edx, edx
mov dword [esp + 0x44], esi
mov dword [esp + 0x40], ecx
xor ecx, ecx
mov dword [esp + 8], eax
nop word cs:[eax + eax]
nop dword [eax]
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x10], edx
mov esi, dword [eax + ecx*8]
mov ebx, dword [eax + ecx*8 + 4]
mov eax, esi
mov dword [esp + 0x38], ebx
mul ebp
mov dword [esp + 0x20], eax
mov eax, ebx
mov dword [esp + 0xc], edx
mul ebp
mov ebp, eax
mov eax, esi
add ebp, dword [esp + 0xc]
adc edx, 0
mov dword [esp + 0xc], edx
mul dword [esp + 8]
mov ebx, eax
mov esi, edx
mov eax, dword [esp + 0x38]
add ebx, ebp
mov ebp, dword [esp + 0x20]
adc esi, dword [esp + 0xc]
setb byte [esp + 0xc]
mul dword [esp + 8]
add eax, esi
movzx esi, byte [esp + 0xc]
adc edx, esi
mov esi, dword [esp + 0x44]
add ebp, dword [esi + ecx*8]
adc ebx, dword [esi + ecx*8 + 4]
adc eax, 0
adc edx, 0
add ebp, edi
mov edi, eax
adc ebx, dword [esp + 0x10]
mov dword [esi + ecx*8], ebp
mov dword [esi + ecx*8 + 4], ebx
mov ebx, dword [esp + 0x5c]
adc edi, 0
lea ecx, [ecx + 1]
adc edx, 0
cmp ebx, ecx
jne 0x49ae80
mov eax, dword [esp]
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x58]
mov dword [esp + 0x10], edx
mov eax, dword [eax]
mov edx, dword [esp + 0x1c]
cmp eax, 5
jb 0x49af69
mov ecx, dword [edi + 4]
cmp ecx, esi
jbe 0x49b2a7
mov edx, dword [esp + 4]
mov edi, dword [edx]
mov edx, dword [esp + 0x1c]
jmp 0x49af77
mov dword [esp + 0x3c], 0
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x1c]
cmp eax, 5
jae 0x49af31
mov edi, dword [esp + 4]
cmp eax, esi
mov ecx, eax
jbe 0x49b2a9
cmp ecx, edx
jb 0x49b2c6
cmp dword [esp + 0x60], 0
je 0x49b070
mov ecx, esi
mov esi, dword [edi + esi*8]
mov ebx, edi
mov edi, dword [esp + 0xcc]
xor ebp, ebp
mov eax, esi
imul esi, dword [esp + 0xd0]
mul edi
mov dword [esp + 0x70], eax
add esi, edx
mov edx, dword [ebx + ecx*8 + 4]
mov ecx, ebx
xor ebx, ebx
add ecx, dword [esp + 0x54]
imul edx, edi
xor edi, edi
add edx, esi
mov dword [esp + 0x40], ecx
mov dword [esp + 0x38], edx
nop word [eax + eax]
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x20], ebp
mov edi, dword [eax + ebx*8]
mov esi, dword [eax + ebx*8 + 4]
mov eax, edi
mov dword [esp + 0x44], esi
mul ecx
mov dword [esp + 0xc], eax
mov eax, esi
mov ebp, edx
mul ecx
mov esi, eax
mov ecx, edx
mov eax, edi
add esi, ebp
adc ecx, 0
mul dword [esp + 0x38]
mov ebp, eax
mov eax, dword [esp + 0x44]
mov edi, edx
add ebp, esi
mov esi, dword [esp + 0xc]
adc edi, ecx
setb cl
mul dword [esp + 0x38]
movzx ecx, cl
add eax, edi
mov edi, dword [esp + 0x40]
adc edx, ecx
add esi, dword [edi + ebx*8]
adc ebp, dword [edi + ebx*8 + 4]
adc eax, 0
adc edx, 0
add esi, dword [esp + 8]
adc ebp, dword [esp + 0x20]
mov dword [edi + ebx*8], esi
mov dword [edi + ebx*8 + 4], ebp
mov edi, eax
lea ebx, [ebx + 1]
mov ebp, edx
adc edi, 0
adc ebp, 0
cmp dword [esp + 0x60], ebx
jne 0x49afd0
mov eax, dword [esp]
mov ebx, dword [esp + 0x5c]
mov eax, dword [eax]
jmp 0x49b074
xor edi, edi
xor ebp, ebp
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x50]
mov edx, edi
mov dword [esp + 8], edi
mov dword [esp + 0x20], ebp
add ecx, dword [esp + 0x3c]
adc esi, dword [esp + 0x10]
mov dword [esp + 0x30], ecx
add edx, ecx
mov ecx, ebp
adc ecx, esi
mov edi, esi
mov esi, dword [esp + 4]
cmp eax, 5
jb 0x49b0ad
mov esi, dword [esp + 0x2c]
mov eax, dword [esi + 4]
mov esi, dword [esi + 8]
mov ebp, dword [esp + 0x1c]
cmp eax, ebp
jbe 0x49b29e
mov dword [esi + ebp*8], edx
mov dword [esi + ebp*8 + 4], ecx
mov esi, dword [esp + 0x58]
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x50], 0
inc esi
cmp dword [esp + 0x30], eax
sbb edi, dword [esp + 0x10]
mov edi, dword [esp + 0x2c]
setb ah
cmp edx, dword [esp + 8]
mov edx, dword [esp + 0x54]
sbb ecx, dword [esp + 0x20]
setb al
add edx, 8
or al, ah
cmp esi, ebp
mov ebp, ebp
movzx ecx, al
mov dword [esp + 0x30], ecx
jne 0x49ae10
test al, al
je 0x49b1d3
mov eax, dword [esp]
mov eax, dword [eax]
cmp eax, 5
jb 0x49b125
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
mov dword [esp + 4], ecx
cmp eax, ebp
jb 0x49b3cc
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 4]
mov edi, dword [esp + 0x68]
cmp edx, 5
lea eax, [esi + eax*8]
cmovae ecx, dword [esp + 0x64]
cmovb edi, edx
mov edx, ebp
mov dword [esp + 0x18], ecx
lea ecx, [esi + ebp*8]
sub eax, ecx
shr eax, 3
cmp eax, edi
cmovae eax, edi
xor ecx, ecx
xor esi, esi
nop word cs:[eax + eax]
nop dword [eax]
sub eax, 1
jb 0x49b268
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 8], edx
mov edx, dword [esp + 4]
mov ebx, dword [eax + 4]
sub ecx, dword [eax]
mov edi, dword [edx + ebp*8 + 4]
sbb esi, ebx
add ecx, dword [edx + ebp*8]
mov ebp, ebx
adc esi, edi
not edi
mov dword [edx], ecx
lea ecx, [edx + 8]
add eax, 8
and ebp, edi
or edi, ebx
mov dword [edx + 4], esi
mov edx, dword [esp + 8]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 4], ecx
and edi, esi
or edi, ebp
mov ebp, dword [esp + 0x4c]
sar edi, 0x1f
dec edx
mov ecx, edi
mov esi, edi
jne 0x49b170
jmp 0x49b268
mov eax, dword [esp]
mov ecx, dword [eax]
cmp ecx, 4
jbe 0x49b1e5
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
jmp 0x49b1e8
lea eax, [edi + 8]
cmp ecx, ebp
jb 0x49b380
cmp ecx, dword [esp + 0x24]
jne 0x49b387
test ebp, ebp
je 0x49b268
xor ecx, ecx
cmp ebp, 4
jb 0x49b23c
mov ecx, ebp
lea edx, [eax + 0x10]
and ecx, 0xfffffffc
mov esi, ecx
nop
movups xmm0, xmmword [edx - 0x10]
movups xmm1, xmmword [edx]
movups xmm2, xmmword [edx + ebp*8 - 0x10]
movups xmm3, xmmword [edx + ebp*8]
movups xmmword [edx - 0x10], xmm2
movups xmmword [edx], xmm3
movups xmmword [edx + ebp*8 - 0x10], xmm0
movups xmmword [edx + ebp*8], xmm1
add edx, 0x20
add esi, 0xfffffffc
jne 0x49b210
cmp ecx, ebp
je 0x49b268
mov edx, ebp
lea eax, [eax + ecx*8]
sub edx, ecx
nop word cs:[eax + eax]
nop dword [eax]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + ebp*8]
movsd qword [eax], xmm1
movsd qword [eax + ebp*8], xmm0
add eax, 8
dec edx
jne 0x49b250
mov eax, dword [esp]
mov eax, dword [eax]
cmp eax, 5
jb 0x49b27f
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 4]
add ecx, 4
mov dword [esp], ecx
cmp eax, ebp
jbe 0x49b288
mov eax, dword [esp]
mov dword [eax], ebp
add esp, 0xb0
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x5fcc5c
push dword [esp + 0x2c]
jmp 0x49b2af
push 0x5fcc8c
push eax
push ebp
jmp 0x49b2b0
mov eax, ecx
push 0x5fcc6c
push eax
push esi
call fcn.005b17d0
add esp, 0xc
ud2
push 0x5fcc4c
push ecx
push dword [esp + 0x24]
jmp 0x49b2cd
push 0x5fcc7c
push ecx
push edx
call fcn.005b1b20
add esp, 0xc
ud2
lea eax, [esp + 0x74]
mov dword [esp + 0x98], 0x5fcc1c
mov dword [esp + 0x9c], 4
mov dword [esp + 0xa8], 0
mov dword [esp + 0x78], eax
lea eax, [esp + 0xc4]
mov dword [esp + 0x7c], 0x489e80
mov dword [esp + 0x80], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x84], 0x489e80
mov dword [esp + 0x88], eax
lea eax, [esp + 0xd4]
mov dword [esp + 0x8c], 0x489e80
mov dword [esp + 0x90], eax
lea eax, [esp + 0x78]
mov dword [esp + 0x94], fcn.00546090
mov dword [esp + 0xa0], eax
lea eax, [esp + 0x98]
mov dword [esp + 0xa4], 4
push 0x5fcc3c
push eax
call fcn.005b1670
add esp, 8
ud2
push 0x5fccac
jmp 0x49b3d1
lea eax, [esp + 0x78]
mov dword [esp + 0x78], 0x5fc480
mov dword [esp + 0x7c], 1
mov dword [esp + 0x88], 0
mov dword [esp + 0x80], str.destination_and_source_slices_have_different_lengthsL
mov dword [esp + 0x84], 0
push 0x5fccbc
push eax
call fcn.005b1670
add esp, 8
ud2
push 0x5fcc9c
push 0x23
push 0x5fcb58
call fcn.005b1730
add esp, 0xc
ud2