Function at 0x4e3110
Capabilities:
Reference http user-agent string
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x99504c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x4e460c
sub esp, 0xf0
mov eax, dword [esp + 0x104]
mov dword [esp], eax
mov ecx, dword [esp + 0x108]
mov dword [esp + 4], ecx
call fcn.004e5950
mov eax, dword [esp + 8]
test eax, eax
je 0x4e3db8
mov dword [esp + 0x48], eax
lea ecx, [0x6f4820]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0044e560
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x104]
test ecx, ecx
je 0x4e3dad
mov dword [esp + 0xc4], eax
mov edx, dword [ecx + 8]
cmp edx, 0x7e440822
ja 0x4e3775
cmp edx, 0x43daea34
ja 0x4e347a
cmp edx, 0x338a7ec0
ja 0x4e330b
cmp edx, 0x2de60e3b
ja 0x4e323c
cmp edx, 0x252f926b
je 0x4e31f7
cmp edx, 0x2de60e3b
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea580]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov edx, dword [edx]
mov ecx, dword [esp + 0x48]
xor ebp, ebp
jmp 0x4e45ef
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea0c0]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x20], ebx
mov edx, dword [edx]
mov dword [esp + 0xa0], edx
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
xor edi, edi
jmp 0x4e45bb
cmp edx, 0x2e74d42b
jne 0x4e32a5
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3280]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x338a7ec0
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3340]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x14]
mov edx, dword [esp + 0x108]
mov edx, dword [edx]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x3e2307d4
ja 0x4e33cc
cmp edx, 0x38dfc0a9
jne 0x4e3364
mov edx, dword [esp + 0x104]
lea ebx, [0x6e9b80]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x34], ebx
mov edx, dword [edx]
mov dword [esp + 0xb4], edx
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
mov ecx, dword [esp + 0x48]
xor edi, edi
jmp 0x4e450a
cmp edx, 0x3e2307d4
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6f46a0]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
movzx ecx, word [ecx]
mov edx, dword [esp + 0xfc]
mov edx, dword [edx + 0x10]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov word [esp + 0x10], cx
call edx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x4072c7d5
jne 0x4e343a
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3140]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
movss xmm0, dword [ecx]
movss dword [esp + 0x74], xmm0
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x14]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x43daea34
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6f4760]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e4492
mov ecx, dword [esp + 0x108]
movzx ecx, byte [ecx]
mov byte [eax], cl
mov ecx, edx
jmp 0x4e402b
cmp edx, 0x6bed3cfa
ja 0x4e35fb
cmp edx, 0x4f3c6e38
ja 0x4e3533
cmp edx, 0x49163278
je 0x4e34d2
cmp edx, 0x4f3c6e38
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea280]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov edx, dword [edx]
mov ecx, dword [esp + 0x48]
xor ebp, ebp
jmp 0x4e445b
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3600]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x62de383d
jne 0x4e3595
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3240]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x14]
mov edx, dword [esp + 0x108]
mov edx, dword [edx]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x6bed3cfa
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6f46e0]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
mov ecx, dword [ecx]
mov edx, dword [esp + 0xfc]
mov edx, dword [edx + 0x14]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call edx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x6d448d5d
ja 0x4e36d7
cmp edx, 0x6d0f0857
jne 0x4e3654
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea240]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x2c], ebx
mov edx, dword [edx]
mov dword [esp + 0xac], edx
mov ebp, dword [esp + 0x100]
mov ecx, dword [esp + 0x48]
mov esi, dword [esp + 0xfc]
xor edi, edi
jmp 0x4e4430
cmp edx, 0x6d448d5d
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3180]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
movsd xmm0, qword [ecx]
movsd qword [esp + 0x90], xmm0
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x94]
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x70800450
jne 0x4e3724
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea200]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x24], ebx
mov edx, dword [edx]
mov dword [esp + 0xa4], edx
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
xor edi, edi
jmp 0x4e438c
cmp edx, 0x7e440822
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea5c0]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x3c], ebx
mov edx, dword [edx]
mov dword [esp + 0xbc], edx
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
mov ecx, dword [esp + 0x48]
xor edi, edi
jmp 0x4e42ee
cmp edx, 0x99d6dd43
ja 0x4e3a9a
cmp edx, 0x8d826c95
ja 0x4e38f9
cmp edx, 0x854f63b7
ja 0x4e3823
cmp edx, 0x81044065
je 0x4e37f2
cmp edx, 0x854f63b7
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6e9d80]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x28], ebx
mov edx, dword [edx]
mov dword [esp + 0xa8], edx
mov ebp, dword [esp + 0x100]
mov ecx, dword [esp + 0x48]
mov esi, dword [esp + 0xfc]
xor edi, edi
jmp 0x4e4254
mov ecx, dword [esp + 0x104]
lea edx, [0x6e9a40]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
mov ecx, dword [ecx]
mov ebx, edx
mov edx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x4e402b
cmp edx, 0x889ce7f8
jne 0x4e3887
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3740]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x108]
movzx edx, word [edx]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov word [esp + 0x10], dx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x8d826c95
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6f45e0]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
movss xmm0, dword [ecx]
movss dword [esp + 0x70], xmm0
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x14]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x93592d94
ja 0x4e39f1
cmp edx, 0x8fc52ddb
jne 0x4e396e
mov ecx, dword [esp + 0x104]
lea edx, [0x6f48e0]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov ebx, dword [esp + 0xfc]
mov ebx, dword [ebx + 0x18]
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
call ebx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x93592d94
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6f4620]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
movsd xmm0, qword [ecx]
movsd qword [esp + 0x88], xmm0
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0x95738979
jne 0x4e3a2d
mov edx, dword [esp + 0x104]
lea ebx, [0x6f4820]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e41d3
mov ecx, dword [esp + 0x108]
movzx ecx, byte [ecx]
mov byte [eax], cl
mov ecx, edx
jmp 0x4e402b
cmp edx, 0x99d6dd43
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6f4720]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov ebx, dword [esp + 0xfc]
mov ebx, dword [ebx + 0x18]
mov ebp, dword [esp + 0x100]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
call ebx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0xd6631a7c
ja 0x4e3bf9
cmp edx, 0xb00b9f48
ja 0x4e3b55
cmp edx, 0x9ae5bb3b
jne 0x4e3aff
mov edx, dword [esp + 0x104]
lea ebx, [0x6ea1c0]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x38], ebx
mov edx, dword [edx]
mov dword [esp + 0xb8], edx
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
mov ecx, dword [esp + 0x48]
xor edi, edi
jmp 0x4e41a9
cmp edx, 0xb00b9f48
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6f4520]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
movzx edx, byte [edx]
test dl, dl
je 0x4e3b3f
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e4130
mov byte [eax], 1
jmp 0x4e3b4e
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e4127
mov byte [eax], 0
mov ecx, edx
jmp 0x4e402b
cmp edx, 0xc3230e0b
jne 0x4e3bb9
mov ecx, dword [esp + 0x104]
lea edx, [0x6e3200]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0xfc]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x108]
movzx edx, word [edx]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov word [esp + 0x10], dx
call ecx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0xd6631a7c
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6e32c0]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e411e
mov ecx, dword [esp + 0x108]
movzx ecx, byte [ecx]
mov byte [eax], cl
mov ecx, edx
jmp 0x4e402b
cmp edx, 0xd9632893
ja 0x4e3cba
cmp edx, 0xd83fe3b3
jne 0x4e3c52
mov edx, dword [esp + 0x104]
lea ebx, [0x6e9a80]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 4]
mov dword [esp + 0x30], ebx
mov edx, dword [edx]
mov dword [esp + 0xb0], edx
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
mov ecx, dword [esp + 0x48]
xor edi, edi
jmp 0x4e40f4
cmp edx, 0xd9632893
jne 0x4e3da2
mov ecx, dword [esp + 0x104]
lea edx, [0x6f4960]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
movzx ecx, word [ecx]
mov edx, dword [esp + 0xfc]
mov edx, dword [edx + 0x10]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov word [esp + 0x10], cx
call edx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0xe927f9e3
jne 0x4e3d1c
mov ecx, dword [esp + 0x104]
lea edx, [0x6f47e0]
cmp ecx, edx
jne 0x4e3da2
mov ecx, dword [esp + 0x108]
mov ecx, dword [ecx]
mov edx, dword [esp + 0xfc]
mov edx, dword [edx + 0x14]
mov ebx, dword [esp + 0x100]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call edx
mov edx, dword [esp + 0x48]
mov ecx, edx
mov eax, dword [esp + 0xc4]
jmp 0x4e402b
cmp edx, 0xf3b50de0
jne 0x4e3d54
mov edx, dword [esp + 0x104]
lea ebx, [0x6e3380]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e407c
mov ecx, dword [esp + 0x108]
movzx ecx, byte [ecx]
mov byte [eax], cl
mov ecx, edx
jmp 0x4e402b
cmp edx, 0xfcd60fce
jne 0x4e3da2
mov edx, dword [esp + 0x104]
lea ebx, [0x6e3080]
cmp edx, ebx
jne 0x4e3da2
mov edx, dword [esp + 0x108]
movzx edx, byte [edx]
test dl, dl
je 0x4e3d8c
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e4073
mov byte [eax], 1
jmp 0x4e3d9b
mov edx, dword [esp + 0x48]
test edx, edx
jbe 0x4e406a
mov byte [eax], 0
mov ecx, edx
jmp 0x4e402b
mov edx, dword [esp + 0x48]
mov ecx, edx
jmp 0x4e402b
mov edx, dword [esp + 0x48]
mov ecx, edx
jmp 0x4e402b
mov eax, dword [esp + 0x104]
test eax, eax
je 0x4e3e0b
mov dword [esp + 0xc8], eax
mov ecx, dword [esp + 0x108]
mov dword [esp + 0xcc], ecx
mov edx, dword [esp + 0xc8]
test edx, edx
je 0x4e3e03
movzx ebx, byte [edx + 0xf]
nop
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4e3dfa
or ebx, 0x80
mov ebp, dword [esp + 0xcc]
jmp 0x4e3e18
xor ebx, ebx
xor edx, edx
xor ebp, ebp
jmp 0x4e3e18
mov ecx, dword [esp + 0x108]
xor ebx, ebx
xor edx, edx
xor ebp, ebp
mov esi, ebx
and ebx, 0x1f
nop
cmp ebx, 0x16
jne 0x4e3e41
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004ba8b0
mov edx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x9c], ebp
mov dword [esp + 0x98], edx
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004e4620
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x4e3f45
mov eax, dword [esp + 0x104]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x4e3e9e
lea ecx, [0x7b31a4]
jmp 0x4e3ea2
xor ecx, ecx
xor eax, eax
mov ecx, dword [ecx + 0x80]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x74f01a]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x36
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.00452120
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xc0], ecx
lea edx, [0x701240]
mov dword [esp], edx
call fcn.0040c500
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x40]
mov dword [eax + 4], ecx
mov ecx, dword [0x995310]
test ecx, ecx
jne 0x4e3f1a
mov ecx, dword [esp + 0xc0]
jmp 0x4e3f28
call fcn.00468e60
mov ecx, dword [esp + 0xc0]
mov dword [edi], ecx
mov dword [eax], ecx
lea ecx, [0x7b0bb8]
mov dword [esp + 0x10c], ecx
mov dword [esp + 0x110], eax
add esp, 0xf0
ret
mov dword [esp + 0x44], eax
lea ecx, [0x6f4820]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0044e560
mov eax, dword [esp + 0xc]
mov dword [esp + 0xc4], eax
lea edi, [esp + 0xd8]
xor eax, eax
call fcn.004690fa
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0xe0], ecx
lea edx, [esp + 0xd8]
mov dword [esp], edx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xc], edx
call fcn.004e49e0
mov eax, dword [esp + 0xf4]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0xf8]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
add esp, 0xf0
ret
mov ebx, dword [esp + 0xf4]
mov ebx, dword [ebx + 0x10]
mov ebp, dword [esp + 0xf8]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
add esp, 0xf0
ret
xor eax, eax
mov ecx, eax
call fcn.00468ed0
xor eax, eax
mov ecx, eax
call fcn.00468ed0
xor eax, eax
mov ecx, eax
call fcn.00468ed0
mov ebx, dword [esi + 0x14]
mov dword [esp], ebp
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call ebx
mov eax, dword [esp + 0x5c]
lea edi, [eax + 1]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xfc]
mov ebx, dword [esp + 0xb0]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0x48]
mov eax, ebp
mov ecx, esi
mov edx, ebx
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
cmp edi, ebx
jge 0x4e4110
mov dword [esp + 0x5c], edi
shl edi, 2
mov ebx, dword [esp + 0x5c]
mov edx, dword [edx + ebx*4]
cmp ecx, edi
jae 0x4e4085
jmp 0x4e4117
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
xor eax, eax
mov ecx, eax
call fcn.00468ed0
xor eax, eax
mov ecx, eax
call fcn.00468ed0
xor eax, eax
mov ecx, eax
call fcn.00468ed0
mov ebx, dword [esi + 0x10]
mov dword [esp], ebp
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov word [esp + 0x10], dx
call ebx
mov eax, dword [esp + 0x64]
lea edi, [eax + 1]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xfc]
mov ebx, dword [esp + 0xb8]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0x48]
mov eax, ebp
mov ecx, esi
mov edx, ebx
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
cmp edi, ebx
jge 0x4e41c5
mov dword [esp + 0x64], edi
shl edi, 1
mov ebx, dword [esp + 0x64]
movzx edx, word [edx + ebx*2]
cmp ecx, edi
jae 0x4e4139
jmp 0x4e41cc
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
xor eax, eax
mov ecx, eax
call fcn.00468ed0
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov esi, dword [esi + 0x18]
mov dword [esp], ebp
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebx
call esi
mov eax, dword [esp + 0x54]
lea edi, [eax + 1]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0xfc]
mov ebp, dword [esp + 0xa8]
mov esi, dword [esp + 0xc4]
mov eax, esi
mov ecx, edx
mov edx, ebp
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
cmp edi, ebx
jge 0x4e4270
mov dword [esp + 0x54], edi
shl edi, 3
mov ebx, dword [esp + 0x54]
lea edx, [edx + ebx*8]
cmp ecx, edi
jae 0x4e41dc
jmp 0x4e4277
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
mov ebx, dword [esi + 0x10]
mov dword [esp], ebp
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov word [esp + 0x10], dx
call ebx
mov eax, dword [esp + 0x68]
lea edi, [eax + 1]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xfc]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0x48]
mov eax, ebp
mov ecx, esi
mov edx, ebx
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
cmp edi, ebx
jge 0x4e430a
mov dword [esp + 0x68], edi
shl edi, 1
mov ebx, dword [esp + 0x68]
movzx edx, word [edx + ebx*2]
cmp ecx, edi
jae 0x4e427e
jmp 0x4e4311
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
movss dword [esp + 0x6c], xmm0
mov edx, dword [esi + 0x14]
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov edi, dword [esp + 0x6c]
inc ebx
mov dword [esp + 0x78], ebx
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edi
call edx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0xfc]
mov edi, dword [esp + 0x78]
mov eax, ebp
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x100]
cmp edi, ebx
jge 0x4e43aa
mov dword [esp + 0x50], edi
shl edi, 2
mov ebx, dword [esp + 0x50]
movss xmm0, dword [edx + ebx*4]
cmp ecx, edi
jae 0x4e4318
jmp 0x4e43b1
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov esi, dword [esi + 0x18]
mov dword [esp], ebp
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebx
call esi
mov eax, dword [esp + 0x58]
lea edi, [eax + 1]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0xfc]
mov ebp, dword [esp + 0xac]
mov esi, dword [esp + 0xc4]
mov eax, esi
mov ecx, edx
mov edx, ebp
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
cmp edi, ebx
jge 0x4e444c
mov dword [esp + 0x58], edi
shl edi, 3
mov ebx, dword [esp + 0x58]
lea edx, [edx + ebx*8]
cmp ecx, edi
jae 0x4e43b8
jmp 0x4e4453
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
inc ebp
cmp ebp, ebx
jge 0x4e447d
movzx esi, byte [edx + ebp]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4e4473
cmp ebp, ecx
jae 0x4e448b
mov byte [eax + ebp], 1
jmp 0x4e445a
cmp ebp, ecx
jae 0x4e4484
mov byte [eax + ebp], 0
jmp 0x4e445a
mov edx, ecx
jmp 0x4e402b
mov eax, ebp
call fcn.00468ed0
mov eax, ebp
call fcn.00468ed0
xor eax, eax
mov ecx, eax
call fcn.00468ed0
mov ebx, dword [esi + 0x14]
mov dword [esp], ebp
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call ebx
mov eax, dword [esp + 0x60]
lea edi, [eax + 1]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xfc]
mov ebx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0x48]
mov eax, ebp
mov ecx, esi
mov edx, ebx
mov ebx, dword [esp + 0x34]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
cmp edi, ebx
jge 0x4e4526
mov dword [esp + 0x60], edi
shl edi, 2
mov ebx, dword [esp + 0x60]
mov edx, dword [edx + ebx*4]
cmp ecx, edi
jae 0x4e449b
jmp 0x4e452d
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
movsd qword [esp + 0x80], xmm0
mov edx, dword [esi + 0x18]
sub ecx, edi
mov dword [esp + 0x7c], ecx
neg ecx
sar ecx, 0x1f
and edi, ecx
lea ecx, [edi + eax]
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
inc ebx
mov dword [esp + 0x78], ebx
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edi
call edx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0xfc]
mov edi, dword [esp + 0x78]
mov eax, ebp
mov ecx, dword [esp + 0x48]
mov edx, ebx
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x100]
cmp edi, ebx
jge 0x4e45d9
mov dword [esp + 0x4c], edi
shl edi, 3
mov ebx, dword [esp + 0x4c]
movsd xmm0, qword [edx + ebx*8]
cmp ecx, edi
jae 0x4e4534
jmp 0x4e45e0
mov edx, ecx
jmp 0x4e402b
mov eax, edi
call fcn.00468f30
xchg esi, ebx
mov byte [eax + ebp], bl
xchg esi, ebx
inc ebp
cmp ebp, ebx
jge 0x4e45fd
movzx esi, byte [edx + ebp]
cmp ebp, ecx
jb 0x4e45e7
jmp 0x4e4604
mov edx, ecx
jmp 0x4e402b
mov eax, ebp
call fcn.00468ed0
nop
call fcn.00467a60
jmp fcn.004e3110