// File: /workspace/github_c_makefile_star2_O1/ccxvii[P]mujs/./jsbuiltin.c
// Function: jsB_init
void jsB_init(js_State *J)
{
	/* Create the prototype objects here, before the constructors */
	J->Object_prototype = jsV_newobject(J, JS_COBJECT, NULL);
	J->Array_prototype = jsV_newobject(J, JS_CARRAY, J->Object_prototype);
	J->Function_prototype = jsV_newobject(J, JS_CCFUNCTION, J->Object_prototype);
	J->Boolean_prototype = jsV_newobject(J, JS_CBOOLEAN, J->Object_prototype);
	J->Number_prototype = jsV_newobject(J, JS_CNUMBER, J->Object_prototype);
	J->String_prototype = jsV_newobject(J, JS_CSTRING, J->Object_prototype);
	J->Date_prototype = jsV_newobject(J, JS_CDATE, J->Object_prototype);

	J->RegExp_prototype = jsV_newobject(J, JS_CREGEXP, J->Object_prototype);
	J->RegExp_prototype->u.r.prog = js_regcompx(J->alloc, J->actx, "(?:)", 0, NULL);
	J->RegExp_prototype->u.r.source = js_strdup(J, "(?:)");

	/* All the native error types */
	J->Error_prototype = jsV_newobject(J, JS_CERROR, J->Object_prototype);
	J->EvalError_prototype = jsV_newobject(J, JS_CERROR, J->Error_prototype);
	J->RangeError_prototype = jsV_newobject(J, JS_CERROR, J->Error_prototype);
	J->ReferenceError_prototype = jsV_newobject(J, JS_CERROR, J->Error_prototype);
	J->SyntaxError_prototype = jsV_newobject(J, JS_CERROR, J->Error_prototype);
	J->TypeError_prototype = jsV_newobject(J, JS_CERROR, J->Error_prototype);
	J->URIError_prototype = jsV_newobject(J, JS_CERROR, J->Error_prototype);

	/* Create the constructors and fill out the prototype objects */
	jsB_initobject(J);
	jsB_initarray(J);
	jsB_initfunction(J);
	jsB_initboolean(J);
	jsB_initnumber(J);
	jsB_initstring(J);
	jsB_initregexp(J);
	jsB_initdate(J);
	jsB_initerror(J);
	jsB_initmath(J);
	jsB_initjson(J);

	/* Initialize the global object */
	js_pushnumber(J, NAN);
	js_defglobal(J, "NaN", JS_READONLY | JS_DONTENUM | JS_DONTCONF);

	js_pushnumber(J, INFINITY);
	js_defglobal(J, "Infinity", JS_READONLY | JS_DONTENUM | JS_DONTCONF);

	js_pushundefined(J);
	js_defglobal(J, "undefined", JS_READONLY | JS_DONTENUM | JS_DONTCONF);

	jsB_globalf(J, "parseInt", jsB_parseInt, 1);
	jsB_globalf(J, "parseFloat", jsB_parseFloat, 1);
	jsB_globalf(J, "isNaN", jsB_isNaN, 1);
	jsB_globalf(J, "isFinite", jsB_isFinite, 1);

	jsB_globalf(J, "decodeURI", jsB_decodeURI, 1);
	jsB_globalf(J, "decodeURIComponent", jsB_decodeURIComponent, 1);
	jsB_globalf(J, "encodeURI", jsB_encodeURI, 1);
	jsB_globalf(J, "encodeURIComponent", jsB_encodeURIComponent, 1);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movl $0x68, %esi
callq 0xe119
movq %rax, %r14
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
xorl %r15d, %r15d
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rax
movq %rax, 0x50(%r14)
movq %r14, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000000, %rax      # imm = 0x100000000
movq %rax, (%r14)
leaq 0x39b21(%rip), %r12     # 0x403b8
movq %r12, 0x8(%r14)
movq %r15, 0x18(%r14)
movq %r14, 0x90(%rbx)
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000001, %rcx      # imm = 0x100000001
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0x98(%rbx)
movq 0x90(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000004, %rcx      # imm = 0x100000004
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xa0(%rbx)
movq 0x90(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000006, %rcx      # imm = 0x100000006
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xa8(%rbx)
movq 0x90(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000007, %rcx      # imm = 0x100000007
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xb0(%rbx)
movq 0x90(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000008, %rcx      # imm = 0x100000008
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xb8(%rbx)
movq 0x90(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x10000000a, %rcx      # imm = 0x10000000A
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xc8(%rbx)
movq 0x90(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000009, %rcx      # imm = 0x100000009
movq %rcx, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xc0(%rbx)
movq (%rbx), %rsi
movq 0x10(%rbx), %rdi
leaq 0x2c0ab(%rip), %rdx     # 0x32c22
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x7110
movq 0xc0(%rbx), %rcx
movq %rax, 0x20(%rcx)
movq %rbx, %rdi
movl $0x5, %esi
callq 0xe119
movl $0x293a3f28, (%rax)     # imm = 0x293A3F28
movb $0x0, 0x4(%rax)
movq 0xc0(%rbx), %rcx
movq %rax, 0x28(%rcx)
movq 0x90(%rbx), %rbp
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
movq %rax, %r14
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rax
movq %rax, 0x50(%r14)
movq %r14, 0x170(%rbx)
incl 0x154(%rbx)
movabsq $0x100000005, %r13      # imm = 0x100000005
movq %r13, (%r14)
movq %r12, 0x8(%r14)
movq %rbp, 0x18(%r14)
movq %r14, 0xd0(%rbx)
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movq %r13, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xd8(%rbx)
movq 0xd0(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movq %r13, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xe0(%rbx)
movq 0xd0(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movq %r13, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xe8(%rbx)
movq 0xd0(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movq %r13, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xf0(%rbx)
movq 0xd0(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movq %r13, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0xf8(%rbx)
movq 0xd0(%rbx), %r14
movq %rbx, %rdi
movl $0x68, %esi
callq 0xe119
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movups %xmm0, 0x10(%rax)
movups %xmm0, 0x20(%rax)
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movq %r15, 0x60(%rax)
movq 0x170(%rbx), %rcx
movq %rcx, 0x50(%rax)
movq %rax, 0x170(%rbx)
incl 0x154(%rbx)
movq %r13, (%rax)
movq %r12, 0x8(%rax)
movq %r14, 0x18(%rax)
movq %rax, 0x100(%rbx)
movq %rbx, %rdi
callq 0x752a
movq %rbx, %rdi
callq 0x427c
movq %rbx, %rdi
callq 0x7771
movq %rbx, %rdi
callq 0x650b
movq %rbx, %rdi
callq 0x786a
movq %rbx, %rdi
callq 0x7a2e
movq %rbx, %rdi
callq 0x7ca2
movq %rbx, %rdi
callq 0x7d3a
movq %rbx, %rdi
callq 0x821f
movq %rbx, %rdi
callq 0x84ef
movq %rbx, %rdi
callq 0x88ec
movsd 0x245b8(%rip), %xmm0    # 0x2b450
movq %rbx, %rdi
callq 0x4184
leaq 0x2bd96(%rip), %rsi     # 0x32c3d
movq %rbx, %rdi
movl $0x7, %edx
callq 0x648e
movsd 0x2459c(%rip), %xmm0    # 0x2b458
movq %rbx, %rdi
callq 0x4184
leaq 0x2cbbb(%rip), %rsi     # 0x33a86
movq %rbx, %rdi
movl $0x7, %edx
callq 0x648e
movq %rbx, %rdi
callq 0x89b6
leaq 0x2e356(%rip), %rsi     # 0x3523d
movq %rbx, %rdi
movl $0x7, %edx
callq 0x648e
leaq 0x1b13(%rip), %rsi      # 0x8a0e
leaq 0x2bd25(%rip), %r14     # 0x32c27
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1c0b(%rip), %rsi      # 0x8b3a
leaq 0x2bcfa(%rip), %r14     # 0x32c30
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1cbd(%rip), %rsi      # 0x8c20
leaq 0x2bcd1(%rip), %r14     # 0x32c3b
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1cd1(%rip), %rsi      # 0x8c68
leaq 0x2bca3(%rip), %r14     # 0x32c41
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1cf8(%rip), %rsi      # 0x8cc3
leaq 0x2bc78(%rip), %r14     # 0x32c4a
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1d0c(%rip), %rsi      # 0x8d0b
leaq 0x2bc4e(%rip), %r14     # 0x32c54
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1d20(%rip), %rsi      # 0x8d53
leaq 0x2bc2d(%rip), %r14     # 0x32c67
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
callq 0x648e
leaq 0x1d34(%rip), %rsi      # 0x8d9b
leaq 0x2bc03(%rip), %r14     # 0x32c71
movq %rbx, %rdi
movq %r14, %rdx
movl $0x1, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x1a7e0
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %edx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x648e