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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa8
mov ebp, dword [esp + 0xc0]
mov ebx, dword [esp + 0xbc]
mov eax, 0x2600
mov dword [esp + 0x34], edx
mov dword [esp], ecx
jmp 0x4a745f
inc ebp
cmp ecx, 0xd
ja 0x4a7500
bt eax, ecx
jae 0x4a7500
cmp edi, 0x110000
jne 0x4a750e
mov edi, 0x110000
cmp ebp, ebx
je 0x4a771f
movzx ecx, byte [ebp]
test cl, cl
jns 0x4a7440
movzx ebx, byte [ebp + 1]
mov edx, ecx
and edx, 0x1f
and ebx, 0x3f
cmp cl, 0xdf
jbe 0x4a74c7
movzx esi, byte [ebp + 2]
shl ebx, 6
and esi, 0x3f
or esi, ebx
cmp cl, 0xf0
jb 0x4a74e3
movzx ecx, byte [ebp + 3]
and edx, 7
shl esi, 6
mov ebx, dword [esp + 0xbc]
shl edx, 0x12
and ecx, 0x3f
or ecx, esi
or ecx, edx
cmp ecx, 0x110000
je 0x4a771f
add ebp, 4
cmp ecx, 0xd
jbe 0x4a744a
jmp 0x4a7500
shl edx, 6
add ebp, 2
or edx, ebx
mov ebx, dword [esp + 0xbc]
mov ecx, edx
cmp ecx, 0xd
jbe 0x4a744a
jmp 0x4a7500
mov ebx, dword [esp + 0xbc]
shl edx, 0xc
add ebp, 3
or esi, edx
mov ecx, esi
cmp ecx, 0xd
jbe 0x4a744a
nop dword [eax]
mov edi, ecx
cmp edi, 0x110000
je 0x4a745f
cmp edi, 0x5c
je 0x4a751c
cmp edi, 0x2f
jne 0x4a771f
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 8]
test eax, eax
je 0x4a753c
cmp edi, 0x5c
jne 0x4a753c
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + 0xc]
push 0
push eax
call dword [ecx + 0x14]
add esp, 8
mov eax, 0x2600
mov esi, ebp
jmp 0x4a7574
inc esi
cmp ecx, 0xd
ja 0x4a7620
mov edx, 0x110000
bt eax, ecx
jae 0x4a7620
cmp edx, 0x110000
jne 0x4a762e
cmp esi, ebx
je 0x4a7782
movzx ecx, byte [esi]
test cl, cl
jns 0x4a7550
movzx eax, byte [esi + 1]
mov edx, ecx
and edx, 0x1f
and eax, 0x3f
cmp cl, 0xdf
jbe 0x4a75db
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
cmp cl, 0xf0
jb 0x4a75f5
movzx ecx, byte [esi + 3]
shl ebx, 6
and edx, 7
mov eax, 0x2600
shl edx, 0x12
and ecx, 0x3f
or ecx, ebx
mov ebx, dword [esp + 0xbc]
or ecx, edx
cmp ecx, 0x110000
je 0x4a7782
add esi, 4
cmp ecx, 0xd
jbe 0x4a755a
jmp 0x4a7620
shl edx, 6
add esi, 2
or edx, eax
mov eax, 0x2600
mov ecx, edx
cmp ecx, 0xd
jbe 0x4a755a
jmp 0x4a7620
shl edx, 0xc
add esi, 3
mov eax, 0x2600
or ebx, edx
mov ecx, ebx
mov ebx, dword [esp + 0xbc]
cmp ecx, 0xd
jbe 0x4a755a
nop word cs:[eax + eax]
nop
mov edx, ecx
cmp edx, 0x110000
je 0x4a7574
cmp edx, 0x2f
je 0x4a763c
cmp edx, 0x5c
jne 0x4a7782
mov ebp, dword [esp + 0x34]
mov eax, dword [ebp + 8]
test eax, eax
je 0x4a7658
cmp edx, 0x5c
jne 0x4a7658
mov ecx, dword [ebp + 0xc]
push 0
push eax
call dword [ecx + 0x14]
add esp, 8
lea eax, [ebp + 0x14]
mov ecx, dword [ebp + 0x14]
mov edi, dword [esp]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x1c]
sub ecx, eax
cmp ecx, 6
jbe 0x4a7fa1
mov ecx, dword [ebp + 0x18]
mov edx, ebx
mov dword [ecx + eax + 3], 0x2f2f3a65
mov dword [ecx + eax], 0x656c6966
add eax, 7
lea ecx, [esp + 8]
mov dword [ebp + 0x1c], eax
push esi
call fcn.004aa650
add esp, 4
movzx ebx, byte [esp + 8]
cmp byte [esp + 0x14], 2
je 0x4a7711
movzx eax, byte [esp + 0xb]
movzx edi, word [esp + 9]
movzx ebp, bl
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 0x18]
mov dl, 1
shl eax, 0x10
mov dword [esp + 0x30], ecx
or edi, eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a7af9
push eax
push esi
lea eax, [esp + 0x10]
push eax
call fcn.004ad180
add esp, 0xc
movzx eax, byte [esp + 8]
cmp al, 3
jne 0x4a7b26
movzx ebx, byte [esp + 9]
shl edi, 8
or edi, ebp
je 0x4a770a
push 1
push edi
push esi
call fcn.0040dc90
add esp, 0xc
mov edi, dword [esp]
mov ebp, dword [esp + 0x34]
mov byte [edi + 4], bl
mov dword [edi], 2
jmp 0x4a8141
mov eax, dword [esp + 0xc8]
test eax, eax
je 0x4a78c7
mov ebp, dword [esp + 0x34]
cmp edi, 0x23
je 0x4a7980
cmp edi, 0x3f
je 0x4a79d2
cmp edi, 0x110000
jne 0x4a7a07
cmp dword [eax + 8], 0
je 0x4a7dc6
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 0x28]
test edi, edi
je 0x4a7eb0
mov eax, dword [eax + 0x2c]
cmp edi, eax
jae 0x4a7ebc
cmp byte [ecx + edi], 0xbf
jg 0x4a7ec2
jmp 0x4a8407
mov eax, dword [esp + 0x34]
lea edx, [eax + 0x14]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x30], edx
sub ecx, eax
cmp ecx, 6
jbe 0x4a7f75
mov edx, dword [esp + 0x34]
mov ecx, dword [edx + 0x18]
mov dword [ecx + eax + 3], 0x2f2f3a65
mov dword [ecx + eax], 0x656c6966
add eax, 7
mov ecx, ebx
mov dword [edx + 0x1c], eax
mov edx, ebp
call fcn.004accd0
cmp dword [esp + 0xc8], 0
mov dword [esp + 4], 7
je 0x4a80c4
test al, al
jne 0x4a80c4
push dword [esp + 0xc8]
call fcn.004a5f70
add esp, 4
test edx, edx
je 0x4a8403
cmp byte [eax], 0x2f
jne 0x4a8403
mov esi, edx
mov dword [esp + 0x2c], eax
inc eax
xor ebx, ebx
dec esi
mov dword [esp + 0x44], eax
jmp 0x4a782c
lea ebx, [edx + ebx + 1]
cmp esi, ebx
jb 0x4a7a60
mov eax, dword [esp + 0x44]
mov ecx, esi
sub ecx, ebx
cmp ecx, 8
lea eax, [eax + ebx]
jae 0x4a7870
xor edx, edx
test ecx, ecx
je 0x4a7886
nop word cs:[eax + eax]
nop dword [eax]
cmp byte [eax + edx], 0x2f
je 0x4a7892
inc edx
cmp ecx, edx
jne 0x4a7850
xor eax, eax
mov edx, ecx
cmp eax, 1
je 0x4a78a0
jmp 0x4a7a57
push ecx
push eax
push 0x2f
call fcn.004dbbe0
add esp, 0xc
cmp eax, 1
je 0x4a78a0
jmp 0x4a7a57
xor eax, eax
cmp eax, 1
je 0x4a78a0
jmp 0x4a7a57
mov eax, 1
cmp eax, 1
jne 0x4a7a57
lea eax, [edx + ebx]
cmp eax, esi
jae 0x4a7820
mov ecx, dword [esp + 0x44]
cmp byte [ecx + eax], 0x2f
jne 0x4a7820
cmp eax, 2
je 0x4a7a67
jmp 0x4a7aaf
mov ebp, dword [esp + 0x34]
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x1c]
lea edi, [ebp + 0x14]
sub ecx, eax
cmp ecx, 7
jbe 0x4a7f8d
mov ecx, dword [ebp + 0x18]
mov dword [ecx + eax + 4], 0x2f2f2f3a
mov dword [ecx + eax], 0x656c6966
add eax, 8
mov byte [esp + 8], 0
mov dword [ebp + 0x1c], eax
lea eax, [esp + 8]
push dword [esp + 0xc0]
push ebx
push 7
push eax
push 0
push ebp
call fcn.004aad00
add esp, 0x18
mov esi, edx
lea ecx, [esp + 8]
mov edx, ebp
push esi
push eax
push 4
push 0
call fcn.004abd30
add esp, 0x10
mov eax, dword [esp + 8]
cmp eax, 2
je 0x4a8130
mov edx, dword [edi + 8]
mov esi, dword [esp]
movsd xmm1, qword [edi]
mov ecx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x10]
mov dword [esi + 0x2c], edx
movsd qword [esi + 0x24], xmm1
movaps xmm1, xmmword [0x531140]
mov dword [esi], eax
mov dword [esi + 4], ecx
movsd qword [esi + 8], xmm0
movups xmmword [esi + 0x10], xmm1
mov dword [esi + 0x20], 7
mov word [esi + 0x30], 0
mov byte [esi + 0x34], 0
jmp 0x4a81c0
movsd xmm1, qword [ebp + 0x10]
mov esi, eax
mov eax, dword [ebp + 0x20]
movsd xmm0, qword [ebp + 0x18]
movsd xmm2, qword [ebp]
mov ecx, dword [esp]
lea edx, [esp + 8]
movsd qword [esp + 0x18], xmm1
movsd xmm1, qword [ebp + 8]
mov dword [esp + 0x28], eax
movsd qword [esp + 0x20], xmm0
movsd qword [esp + 8], xmm2
movsd qword [esp + 0x10], xmm1
push dword [esp + 0xc0]
push ebx
push esi
call fcn.004ac3e0
add esp, 0xc
jmp 0x4a81c0
cmp dword [eax], 0
je 0x4a7dd1
mov ecx, eax
add eax, 4
mov edi, dword [eax]
mov esi, dword [ecx + 0x28]
test edi, edi
je 0x4a7ded
mov eax, dword [ecx + 0x2c]
cmp edi, eax
jae 0x4a7e01
cmp byte [esi + edi], 0xbf
jg 0x4a7fbe
jmp 0x4a808c
mov edx, dword [esp + 0xc0]
mov ecx, ebx
call fcn.004accd0
test al, al
jne 0x4a78cb
mov ecx, dword [esp + 0xc8]
cmp dword [ecx], 0
je 0x4a7f4a
lea eax, [ecx + 4]
mov edi, dword [eax]
mov esi, dword [ecx + 0x28]
test edi, edi
je 0x4a7f64
mov eax, dword [ecx + 0x2c]
cmp edi, eax
jae 0x4a8086
cmp byte [esi + edi], 0xbf
jg 0x4a81d1
jmp 0x4a808c
mov eax, esi
cmp eax, 2
je 0x4a7a67
jmp 0x4a7aaf
mov eax, esi
cmp eax, 2
jne 0x4a7aaf
mov eax, dword [esp + 0x44]
movzx eax, byte [eax]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x4a7aaf
mov eax, dword [esp + 0x2c]
cmp byte [eax + 2], 0x3a
jne 0x4a7aaf
mov esi, dword [esp + 0x34]
mov eax, dword [esi + 0x1c]
cmp eax, dword [esi + 0x14]
jne 0x4a80a0
push eax
mov ebx, dword [esp + 0x34]
push ebx
call fcn.0040bd70
mov edx, ebx
add esp, 8
mov eax, dword [esi + 0x1c]
mov ebx, dword [esp + 0xbc]
jmp 0x4a80ab
mov eax, dword [esp + 0xc8]
movzx ecx, byte [eax + 0x34]
test cl, cl
je 0x4a7b06
mov dword [esp + 0x44], ecx
mov ecx, eax
mov eax, dword [eax + 0x18]
mov edx, dword [ecx + 0x1c]
mov esi, dword [ecx + 0x28]
mov ecx, dword [ecx + 0x2c]
mov ebx, edx
sub ebx, eax
jb 0x4a7e1c
test eax, eax
je 0x4a7e0e
cmp eax, ecx
jae 0x4a7e0c
cmp byte [esi + eax], 0xc0
jge 0x4a7e0e
jmp 0x4a7e1c
mov dword [esp + 4], 0
jmp 0x4a7c36
mov ebx, dword [esp + 0xbc]
mov dword [esp + 0x44], 0
lea eax, [edi - 0x23]
cmp eax, 0x1c
jbe 0x4a80d4
jmp 0x4a80de
movzx ecx, word [esp + 0xa]
mov dword [esp + 0x2c], ebx
movzx ebx, byte [esp + 9]
mov edx, dword [esp + 0xc]
movq xmm0, qword [esp + 0x14]
test al, al
mov word [esp + 4], cx
mov ecx, dword [esp + 0x10]
jne 0x4a7b94
mov bh, al
movd eax, xmm0
cmp eax, 9
mov al, bh
jne 0x4a7b94
push 9
push str.localhost
push ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
movdqu xmmword [esp + 0xa4], xmm0
call fcn.004f60f4
movdqu xmm0, xmmword [esp + 0xa4]
mov edx, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
add esp, 0xc
test eax, eax
mov al, bh
je 0x4a83c8
mov byte [esp + 0x54], al
movzx eax, word [esp + 4]
mov byte [esp + 0x55], bl
lea ebx, [esp + 0x54]
mov dword [esp + 8], 0
mov dword [esp + 0x10], 0x531258
mov dword [esp + 0x14], 1
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], 0x4addf0
mov word [esp + 0x56], ax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 8]
movq qword [esp + 0x60], xmm0
mov dword [esp + 0x70], eax
lea eax, [esp + 0x74]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 1
lea eax, [esp + 0x70]
push ecx
push 0x531700
push eax
call fcn.004d4c80
add esp, 0xc
test al, al
jne 0x4a8403
lea eax, [esp + 0x84]
push ebx
push eax
call fcn.004ad110
add esp, 8
movzx eax, byte [esp + 0x84]
mov ebx, dword [esp + 0x2c]
xor edx, edx
mov dword [esp + 4], eax
movsd xmm0, qword [esp + 0x85]
movsd xmm1, qword [esp + 0x8d]
shl edi, 8
or edi, ebp
movsd qword [esp + 0x7c], xmm1
movsd qword [esp + 0x74], xmm0
je 0x4a7c6b
push 1
push edi
push esi
mov esi, edx
call fcn.0040dc90
mov edx, esi
add esp, 0xc
mov ecx, dword [esp + 0x34]
cmp byte [esp + 4], 0
mov ebp, dword [ecx + 0x1c]
setne byte [esp + 0x54]
test dl, dl
je 0x4a7cd2
mov eax, dword [esp + 0x44]
mov edi, dword [esp]
cmp ebp, dword [eax]
mov eax, ebp
jne 0x4a7ca1
push ebp
push dword [esp + 0x48]
call fcn.0040bd70
add esp, 8
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x1c]
mov edx, dword [esp + 0x34]
mov ecx, dword [edx + 0x18]
mov byte [ecx + eax], 0x2f
inc dword [edx + 0x1c]
lea eax, [esp + 0x54]
push dword [esp + 0x30]
push ebx
push ebp
push eax
push 0
push edx
call fcn.004aad00
add esp, 0x18
mov esi, eax
mov ebx, edx
cmp byte [esp + 0x54], 0
jne 0x4a7d1f
jmp 0x4a7cf5
lea eax, [esp + 0x54]
push dword [esp + 0x30]
push ebx
push eax
push 0
push ecx
call fcn.004aaae0
add esp, 0x14
mov edi, dword [esp]
mov esi, eax
mov ebx, edx
cmp byte [esp + 0x54], 0
jne 0x4a7d1f
push ebp
push 7
push dword [esp + 0x4c]
lea ebp, [esp + 0x14]
push ebp
call fcn.004af530
add esp, 0x10
push ebp
call fcn.004d19f0
add esp, 4
mov ebp, 7
mov dword [esp + 4], 0
movzx eax, byte [esp + 0xc4]
mov edx, dword [esp + 0x34]
lea ecx, [esp + 8]
push ebx
push esi
push 4
push eax
call fcn.004abd30
add esp, 0x10
mov eax, dword [esp + 8]
cmp eax, 2
jne 0x4a7d5c
movzx eax, byte [esp + 0xc]
mov ebp, dword [esp + 0x34]
mov byte [edi + 4], al
mov dword [edi], 2
jmp 0x4a8141
mov esi, dword [esp + 0x44]
movsd xmm3, qword [esp + 0x74]
movsd xmm2, qword [esp + 0x7c]
mov ecx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x10]
mov edx, dword [esi + 8]
movsd xmm1, qword [esi]
mov dword [edi + 0x2c], edx
movsd qword [edi + 0x24], xmm1
movsd qword [edi + 0x35], xmm3
movsd qword [edi + 0x3d], xmm2
mov dword [edi], eax
mov eax, dword [esp + 4]
mov dword [edi + 4], ecx
movsd qword [edi + 8], xmm0
mov dword [edi + 0x10], 4
mov dword [edi + 0x14], 7
mov dword [edi + 0x18], 7
mov dword [edi + 0x1c], ebp
mov dword [edi + 0x20], ebp
mov word [edi + 0x30], 0
mov byte [edi + 0x34], al
jmp 0x4a81c0
mov ecx, dword [eax + 0x28]
mov edi, dword [eax + 0x2c]
jmp 0x4a7ec2
cmp dword [eax + 8], 0
je 0x4a7fb8
mov ecx, eax
add eax, 0xc
mov edi, dword [eax]
mov esi, dword [ecx + 0x28]
test edi, edi
jne 0x4a79ed
lea eax, [ebp + 0x14]
add ebp, 0x1c
xor edi, edi
mov dword [esp + 0x44], eax
mov ebx, dword [ebp]
jmp 0x4a7fd5
je 0x4a7fbe
jmp 0x4a808c
jne 0x4a7e1c
test edx, edx
je 0x4a7e31
cmp edx, ecx
jae 0x4a7e2f
cmp byte [esi + edx], 0xbf
jg 0x4a7e31
push 0x53111c
push edx
push eax
push ecx
push esi
call fcn.005062e0
add esp, 0x14
ud2
jne 0x4a7e1c
mov ecx, dword [esp + 0x34]
add esi, eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 4], esi
mov eax, dword [ecx + 0x14]
mov edx, dword [ecx + 0x1c]
sub eax, edx
mov ecx, edx
cmp eax, ebx
jb 0x4a8371
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x2c]
mov ebx, ecx
mov eax, dword [eax + 0x18]
add eax, ecx
push esi
push dword [esp + 8]
push eax
call fcn.004f5b80
add esp, 0xc
mov ecx, dword [esp + 0xc8]
mov eax, dword [esp + 0x34]
add ebx, esi
mov dword [esp + 4], ebx
movsd xmm0, qword [ecx + 0x35]
movsd xmm1, qword [ecx + 0x3d]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0xbc]
movsd qword [esp + 0x54], xmm0
movsd qword [esp + 0x5c], xmm1
lea eax, [edi - 0x23]
cmp eax, 0x1c
jbe 0x4a80d4
jmp 0x4a80de
lea ebx, [ebp + 0x14]
lea eax, [ebp + 0x1c]
xor edi, edi
mov ebp, dword [eax]
jmp 0x4a7ed5
jne 0x4a8407
lea ebx, [ebp + 0x14]
mov eax, dword [ebp + 0x14]
mov ebp, dword [ebp + 0x1c]
sub eax, ebp
cmp eax, edi
jb 0x4a838b
mov esi, dword [esp + 0x34]
mov eax, dword [esi + 0x18]
add eax, ebp
push edi
push ecx
push eax
call fcn.004f5b80
add esp, 0xc
add ebp, edi
mov edx, dword [esp + 0xc8]
mov ecx, dword [esp]
mov dword [esi + 0x1c], ebp
mov eax, dword [ebx + 8]
movsd xmm0, qword [ebx]
movsd xmm1, qword [edx + 0x3c]
movsd xmm3, qword [edx + 0x34]
movsd xmm2, qword [edx]
mov dword [ecx + 0x2c], eax
movzx eax, byte [edx + 0x44]
movsd qword [ecx + 0x24], xmm0
movsd qword [ecx + 0x3c], xmm1
movups xmm1, xmmword [edx + 0x10]
movsd qword [ecx + 0x34], xmm3
mov byte [ecx + 0x44], al
mov eax, dword [edx + 0x20]
mov edx, dword [edx + 0x30]
movsd qword [ecx], xmm2
mov dword [ecx + 8], 0
movups xmmword [ecx + 0x10], xmm1
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x30], edx
jmp 0x4a81c0
cmp dword [ecx + 8], 0
je 0x4a81cb
lea eax, [ecx + 0xc]
mov edi, dword [eax]
mov esi, dword [ecx + 0x28]
test edi, edi
jne 0x4a7a3d
add ebp, 0x1c
xor edi, edi
mov ebx, dword [ebp]
mov ebp, dword [esp + 0x34]
jmp 0x4a81e1
push 7
push eax
push edx
call fcn.00503700
add esp, 0xc
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x1c]
jmp 0x4a779e
push 8
push eax
push edi
call fcn.00503700
add esp, 0xc
mov eax, dword [ebp + 0x1c]
jmp 0x4a78df
push 7
push eax
push dword [esp + 0x4c]
call fcn.00503700
add esp, 0xc
mov eax, dword [ebp + 0x1c]
jmp 0x4a7673
mov esi, dword [eax + 0x28]
mov edi, dword [eax + 0x2c]
mov ecx, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x1c]
lea eax, [ebp + 0x14]
mov dword [esp + 0x44], eax
sub ecx, ebx
cmp ecx, edi
jb 0x4a83ae
mov ebp, dword [esp + 0x34]
mov eax, dword [ebp + 0x18]
add eax, ebx
push edi
push esi
push eax
call fcn.004f5b80
add esp, 0xc
add ebx, edi
movzx eax, byte [esp + 0xc4]
lea ecx, [esp + 8]
mov edx, ebp
mov dword [ebp + 0x1c], ebx
mov ebx, dword [esp + 0xc8]
mov esi, dword [ebx + 0x10]
push dword [esp + 0xc0]
push dword [esp + 0xc0]
push esi
push eax
call fcn.004abd30
add esp, 0x10
mov eax, dword [esp + 8]
cmp eax, 2
je 0x4a8130
mov ebp, dword [esp + 0x44]
mov edi, dword [esp]
movsd xmm2, qword [ebx + 0x3c]
mov ecx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x10]
mov edx, dword [ebp + 8]
movsd xmm1, qword [ebp]
mov dword [edi + 0x2c], edx
movsd qword [edi + 0x24], xmm1
movsd xmm1, qword [ebx + 0x34]
mov dh, byte [ebx + 0x44]
movsd qword [edi + 0x3c], xmm2
movsd qword [edi + 0x34], xmm1
mov byte [edi + 0x44], dh
mov dword [edi], eax
movups xmm1, xmmword [ebx + 0x14]
mov eax, dword [ebx + 0x30]
mov dword [edi + 4], ecx
movsd qword [edi + 8], xmm0
mov dword [edi + 0x10], esi
movups xmmword [edi + 0x14], xmm1
mov dword [edi + 0x30], eax
jmp 0x4a81c0
je 0x4a81d1
push 0x5313fc
push edi
push 0
push eax
push esi
call fcn.005062e0
add esp, 0x14
ud2
mov ebx, dword [esp + 0xbc]
mov edx, dword [esp + 0x30]
mov ecx, dword [esi + 0x18]
mov byte [ecx + eax], 0x2f
inc dword [esi + 0x1c]
push 2
push dword [esp + 0x48]
push edx
call fcn.00426590
add esp, 0xc
mov dword [esp + 0x44], 0
lea eax, [edi - 0x23]
cmp eax, 0x1c
ja 0x4a80de
mov ecx, 0x10001001
bt ecx, eax
jb 0x4a80e3
cmp edi, 0x5c
jne 0x4a80ea
mov ebp, dword [esp + 0xc0]
lea eax, [esp + 8]
mov byte [esp + 8], 0
push ebp
push ebx
mov ebx, dword [esp + 0xc]
push ebx
push eax
push 0
mov ebp, dword [esp + 0x48]
push ebp
call fcn.004aad00
add esp, 0x18
movzx edi, byte [esp + 0xc4]
mov esi, edx
lea ecx, [esp + 8]
mov edx, ebp
push esi
push eax
push 4
push edi
call fcn.004abd30
add esp, 0x10
mov eax, dword [esp + 8]
cmp eax, 2
jne 0x4a8158
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp]
mov byte [ecx + 4], al
mov dword [ecx], 2
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x4a81c0
push 1
push eax
push dword [ebp + 0x18]
call fcn.0040dc90
add esp, 0xc
jmp 0x4a81c0
mov edi, dword [esp + 0x30]
mov esi, dword [esp]
movsd xmm3, qword [esp + 0x54]
movsd xmm2, qword [esp + 0x5c]
mov ecx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x10]
mov edx, dword [edi + 8]
movsd xmm1, qword [edi]
mov dword [esi + 0x2c], edx
movsd qword [esi + 0x24], xmm1
movsd qword [esi + 0x35], xmm3
movsd qword [esi + 0x3d], xmm2
mov dword [esi], eax
mov eax, dword [esp + 0x44]
mov dword [esi + 4], ecx
movsd qword [esi + 8], xmm0
mov dword [esi + 0x10], 4
mov dword [esi + 0x14], 7
mov dword [esi + 0x18], 7
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x20], ebx
mov word [esi + 0x30], 0
mov byte [esi + 0x34], al
add esp, 0xa8
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [ecx + 0x28]
mov edi, dword [ecx + 0x2c]
mov eax, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x1c]
sub eax, ebx
cmp eax, edi
jb 0x4a83eb
mov eax, dword [ebp + 0x18]
add eax, ebx
push edi
push esi
push eax
call fcn.004f5b80
add esp, 0xc
mov eax, dword [esp + 0xc8]
add ebx, edi
mov ecx, ebx
mov dword [ebp + 0x1c], ebx
mov esi, dword [eax + 0x20]
sub ecx, esi
je 0x4a8247
mov eax, dword [ebp + 0x18]
test esi, esi
je 0x4a821f
cmp ebx, esi
jbe 0x4a841b
cmp byte [eax + esi], 0xbf
jle 0x4a841b
cmp ecx, 2
jne 0x4a823a
movzx ecx, byte [eax + esi]
and cl, 0xdf
add cl, 0xbf
cmp cl, 0x19
ja 0x4a823a
cmp byte [eax + esi + 1], 0x3a
je 0x4a8247
mov ecx, ebp
xor edx, edx
push esi
call fcn.004aba00
add esp, 4
mov byte [esp + 8], 1
lea eax, [esp + 8]
push dword [esp + 0xc0]
push dword [esp + 0xc0]
push esi
push eax
push 0
push ebp
call fcn.004aad00
add esp, 0x18
movsd xmm1, qword [ebp + 0x10]
mov ecx, dword [ebp + 0x20]
movsd xmm0, qword [ebp + 0x18]
movsd xmm3, qword [ebp]
movsd qword [esp + 0x18], xmm1
movsd xmm1, qword [ebp + 8]
mov ebp, dword [esp + 0xc8]
mov dword [esp + 0x28], ecx
movsd qword [esp + 0x20], xmm0
movsd qword [esp + 8], xmm3
movss xmm2, dword [ebp + 0x30]
movsd qword [esp + 0x10], xmm1
movups xmm1, xmmword [ebp + 0x10]
movups xmmword [esp + 0x34], xmm2
sub esp, 0x10
mov dword [esp + 0xc], edx
lea ecx, [esp + 0x64]
lea edx, [esp + 0x18]
mov dword [esp + 8], eax
movups xmmword [esp + 0x54], xmm1
movss dword [esp + 4], xmm1
mov dword [esp], 0
call fcn.004abd30
add esp, 0x10
mov edi, dword [esp + 0x54]
cmp edi, 2
jne 0x4a8312
movzx eax, byte [esp + 0x58]
mov ebx, dword [esp]
mov byte [ebx + 4], al
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4a830b
push 1
push eax
push dword [esp + 0x28]
call fcn.0040dc90
add esp, 0xc
mov dword [ebx], edi
jmp 0x4a81c0
mov ebx, dword [esp]
movsd xmm1, qword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
movsd xmm2, qword [ebp + 0x3c]
mov eax, dword [esp + 0x58]
movsd xmm0, qword [esp + 0x5c]
movzx edx, byte [ebp + 0x44]
movsd qword [ebx + 0x24], xmm1
movsd xmm1, qword [ebp + 0x34]
mov dword [ebx + 0x2c], ecx
movsd qword [ebx + 0x3c], xmm2
movups xmm2, xmmword [esp + 0x44]
mov byte [ebx + 0x44], dl
movsd qword [ebx + 0x34], xmm1
movups xmm1, xmmword [esp + 0x34]
mov dword [ebx + 4], eax
movsd qword [ebx + 8], xmm0
movups xmmword [ebx + 0x10], xmm2
mov dword [ebx + 0x20], esi
movss dword [ebx + 0x30], xmm1
mov dword [ebx], edi
jmp 0x4a81c0
push ebx
push ecx
push dword [esp + 0x38]
call fcn.00503700
add esp, 0xc
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x1c]
jmp 0x4a7e51
mov eax, dword [esp + 0x34]
add eax, 0x1c
mov dword [esp + 0x44], eax
push edi
push ebp
push ebx
mov esi, ecx
call fcn.00503700
mov eax, dword [esp + 0x50]
mov ecx, esi
add esp, 0xc
jmp 0x4a7eb8
mov eax, dword [esp + 0x34]
lea ebp, [eax + 0x1c]
push edi
push ebx
push dword [esp + 0x4c]
call fcn.00503700
add esp, 0xc
jmp 0x4a7df9
test edx, edx
je 0x4a83d8
push 1
push edx
push ecx
call fcn.0040dc90
add esp, 0xc
mov ebx, dword [esp + 0x2c]
mov dword [esp + 4], 0
mov dl, 1
jmp 0x4a7c36
mov eax, ebp
add ebp, 0x1c
add eax, 0x14
push edi
push ebx
push eax
call fcn.00503700
add esp, 0xc
jmp 0x4a7f69
ud2
push 0x531228
push edi
push 0
push eax
push ecx
call fcn.005062e0
add esp, 0x14
ud2
push 0x531310
push ebx
push esi
push ebx
push eax
call fcn.005062e0
add esp, 0x14
ud2