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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
mov eax, dword [0x6ccd44]
xor eax, esp
mov dword [esp + 0x88], eax
push ebx
push esi
push edi
mov ebx, ecx
mov dword [esp + 0x1c], ebx
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x10], eax
push 8
pop eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], edx
and dword [esp + 0x20], eax
mov eax, edx
and eax, 0x10
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x54], eax
mov eax, edx
and eax, 0x20
mov edi, dword [ebp + 8]
mov dword [esp + 0x58], eax
mov eax, edx
and eax, 0x40
mov esi, dword [ebp + 0x18]
mov dword [esp + 0x44], eax
mov eax, edx
and eax, 0x80
mov dword [esp + 0x40], eax
mov eax, edx
and eax, 0x100
mov dword [esp + 0xc], ecx
mov dword [esp + 0x3c], eax
mov eax, edx
and eax, 1
mov dword [esp + 0x48], esi
mov dword [esp + 0x30], eax
mov eax, edx
and eax, 2
mov dword [esp + 0x38], eax
mov eax, edx
and eax, 4
and edx, 0x200
mov dword [esp + 0x5c], eax
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x2c], eax
xor eax, eax
and dword [esp + 0x60], eax
and dword [esp + 0x34], eax
test dword [edi], 0x400000
mov dword [esp + 0x24], edx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x14], eax
je 0x430626
mov eax, dword [ebx + 0x130]
cmp ecx, dword [eax + 0x15c]
jne 0x430603
cmp dword [esp + 0x44], 0
je 0x430626
mov eax, dword [edi + 0x28]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0x40]
lea edx, [eax + ecx*8]
mov ecx, ebx
call fcn.0042f052
mov edx, eax
mov dword [esp + 0x14], eax
mov ecx, ebx
call fcn.0041a856
mov edx, dword [esp + 0x28]
mov ecx, ebx
call fcn.00418ace
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x34]
jae 0x430626
cmp dword [edi + 0x2c], 0
je 0x4305e8
cmp dword [esp + 0x24], 0
je 0x430f4d
cmp dword [esp + 0x20], 0
je 0x430626
cmp dword [esp + 0x30], 0
jne 0x430626
xor eax, eax
inc eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x60], eax
jmp 0x430626
mov ecx, dword [esp + 0x2c]
cmp ecx, 0xffffffff
je 0x430626
cmp ecx, dword [edi + 0x28]
jb 0x430626
cmp dword [edi + 0x2c], 0
je 0x43061f
test edx, edx
je 0x430f4d
lea eax, [ecx + 1]
mov dword [esp + 0x7c], eax
xor eax, eax
mov edx, edi
inc eax
mov ecx, ebx
push eax
lea eax, [esp + 0x68]
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
call fcn.0042e347
add esp, 0x10
test eax, eax
jne 0x43088c
test byte [edi], 0x80
jne 0x430666
cmp dword [esp + 0x24], eax
jne 0x430666
cmp dword [ebp + 0x1c], eax
jne 0x430f68
xor eax, eax
jmp 0x4307f9
cmp dword [esp + 0x3c], 0
jne 0x43080e
cmp dword [esp + 0x40], 0
jne 0x43080e
xor eax, eax
mov dword [esp + 0x10], eax
cmp dword [esp + 0x20], eax
je 0x430696
cmp dword [esp + 0x30], eax
push 1
pop ecx
cmovne eax, ecx
mov dword [esp + 0x10], eax
cmp dword [esp + 0x54], 0
je 0x4306ab
cmp dword [esp + 0x38], 0
je 0x4306ab
or eax, 2
mov dword [esp + 0x10], eax
cmp dword [esp + 0x58], 0
je 0x4306c0
cmp dword [esp + 0x5c], 0
je 0x4306c0
or eax, 4
mov dword [esp + 0x10], eax
cmp dword [esp + 0x44], 0
je 0x4306dd
mov edx, dword [esp + 0x28]
mov ecx, ebx
call fcn.0041855c
mov esi, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x10]
jmp 0x4306ef
mov esi, dword [esp + 0x48]
mov ecx, 0xfff3
mov word [esp + 0x4e], cx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x2c]
cmp ecx, 0xffffffff
je 0x430740
test dword [edi], 0x8000
je 0x430740
cmp eax, 7
jne 0x430737
mov edx, ecx
mov ecx, ebx
push edi
call fcn.0042da02
pop ecx
test eax, eax
je 0x430740
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ecx
mov ecx, 0xfff8
mov dword [eax], esi
cmp word [eax + 6], cx
mov ecx, dword [esp + 0x14]
jb 0x430781
mov eax, esi
inc dword [eax + 4]
jmp 0x430781
mov edx, edi
mov ecx, ebx
call fcn.0042de95
push dword [esp + 0xc]
mov edx, edi
mov ecx, ebx
call fcn.0042e0c5
mov edx, eax
mov eax, dword [edi + 0x10]
pop ecx
mov ecx, dword [esp + 0x18]
mov dword [eax + edx*8 + 4], ecx
mov ecx, 0xfff8
mov dword [eax + edx*8], esi
cmp word [eax + edx*8 + 6], cx
jb 0x43076f
mov eax, esi
inc dword [eax + 4]
mov ecx, dword [esp + 0x10]
imul eax, dword [edi + 0x18], 0xc
add eax, dword [edi + 0x10]
mov byte [eax + edx], cl
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0xc]
test dword [edi], 0x400000
je 0x430e8f
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x43079c
mov dword [edi + 0x28], eax
mov eax, dword [ebx + 0x130]
cmp esi, dword [eax + 0x15c]
jne 0x4307e8
mov eax, dword [esp + 0x34]
cmp ecx, eax
jae 0x4307e8
lea edx, [esp + 0x7c]
push edx
push dword [esp + 0x28]
mov edx, edi
push ecx
push eax
mov ecx, ebx
call fcn.0042f0dd
mov ecx, dword [esp + 0x8c]
add esp, 0x10
cmp dword [esp + 0x60], 0
mov dword [edi + 0x28], ecx
je 0x4307e0
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
test eax, eax
je 0x430f4d
mov ecx, dword [ebx + 0x2c]
cmp dword [ecx + 0x20], 0
je 0x4307f6
call fcn.0042b4a2
xor eax, eax
inc eax
mov ecx, dword [esp + 0x94]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.005b35b0
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x54], 0
push 8
pop eax
je 0x430827
cmp dword [esp + 0x38], 0
push 0xa
pop ecx
cmovne eax, ecx
mov dword [esp + 0x18], eax
cmp dword [esp + 0x58], 0
je 0x43083c
cmp dword [esp + 0x5c], 0
je 0x43083c
or eax, 4
mov dword [esp + 0x18], eax
cmp dword [esp + 0x2c], 0xffffffff
je 0x430854
test dword [edi], 0x8000
je 0x430854
mov edx, edi
mov ecx, ebx
call fcn.0042de95
push dword [esp + 0xc]
mov edx, edi
mov ecx, ebx
call fcn.0042e0c5
pop ecx
mov ecx, dword [edi + 0x10]
mov edx, eax
mov eax, dword [esp + 0x10]
mov dword [ecx + edx*8], eax
mov ecx, dword [edi + 0x10]
mov dword [ecx + edx*8 + 4], esi
test eax, eax
je 0x43087c
inc dword [eax + 4]
test esi, esi
je 0x430883
inc dword [esi + 4]
mov ecx, dword [esp + 0x18]
jmp 0x430773
cmp dword [esp + 0x54], 0
mov ecx, dword [esp + 0x64]
je 0x4308f8
cmp dword [esp + 0x38], 0
je 0x4308f3
test cl, 2
jne 0x4308f8
push 8
pop edx
mov esi, dword [esp + 0x10]
mov eax, ecx
and eax, 4
jne 0x4309cc
cmp dword [esp + 0x24], eax
jne 0x4309cc
cmp dword [esp + 0x58], eax
je 0x4308cf
cmp dword [esp + 0x5c], eax
jne 0x430f4d
cmp dword [esp + 0x54], 0
je 0x4309cc
test cl, 2
je 0x4309c1
cmp dword [esp + 0x38], 0
je 0x430f4d
jmp 0x4309cc
test cl, 2
jne 0x4308a3
cmp dword [esp + 0x58], 0
je 0x430912
cmp dword [esp + 0x5c], 0
je 0x43090d
test cl, 4
je 0x4308a3
jmp 0x430912
test cl, 4
jne 0x4308a3
cmp dword [esp + 0x44], 0
je 0x430955
test cl, 8
jne 0x4308a3
or edx, 0xffffffff
mov ecx, ebx
call fcn.0041855c
mov edx, dword [esp + 0x28]
mov ecx, ebx
mov esi, eax
call fcn.0041855c
xor ecx, ecx
mov edx, esi
inc ecx
push ecx
push eax
xor ecx, ecx
call fcn.0043ff5d
pop ecx
pop ecx
mov ecx, dword [esp + 0x64]
test eax, eax
je 0x4308a3
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x20], 0
push 8
pop edx
je 0x430982
test dl, cl
jne 0x4308a6
cmp dword [esp + 0x30], 0
je 0x430979
test cl, 1
je 0x4308a6
jmp 0x430982
test cl, 1
jne 0x4308a6
cmp dword [esp + 0x3c], 0
je 0x43099b
test dl, cl
je 0x4308a6
cmp esi, dword [esp + 0x6c]
jne 0x4308a6
cmp dword [esp + 0x40], 0
je 0x4307e8
mov esi, dword [esp + 0x10]
test dl, cl
je 0x4308aa
cmp esi, dword [esp + 0x68]
je 0x4307e8
jmp 0x4308aa
cmp dword [esp + 0x38], 0
jne 0x430f4d
cmp dword [esp + 0x3c], 0
mov dword [esp + 0x18], 0xfff8
jne 0x430b0c
cmp dword [esp + 0x40], 0
jne 0x430b0c
mov esi, dword [esp + 0x44]
test esi, esi
jne 0x4309fc
cmp dword [esp + 0x20], esi
je 0x430c1a
test dl, cl
je 0x430a99
test eax, eax
jne 0x430a12
cmp dword [esp + 0x24], eax
je 0x430f4d
mov edx, dword [esp + 0x70]
test edx, edx
js 0x430f4d
mov eax, dword [edi + 0x10]
mov ecx, dword [eax + edx*8]
and dword [eax + edx*8], 0
test ecx, ecx
je 0x430a3b
sub dword [ecx + 4], 1
jne 0x430a3b
push ecx
push ebx
call fcn.0042c682
pop ecx
pop ecx
mov ecx, dword [edi + 0x10]
mov eax, dword [esp + 0x70]
mov edx, dword [ecx + eax*8 + 4]
and dword [ecx + eax*8 + 4], 0
test edx, edx
je 0x430a5e
sub dword [edx + 4], 1
jne 0x430a5e
push edx
push ebx
call fcn.0042c682
pop ecx
pop ecx
mov ecx, dword [edi + 0x10]
mov edx, 0xfff3
mov eax, dword [esp + 0x70]
mov word [ecx + eax*8 + 6], dx
imul ecx, dword [edi + 0x18], 0xc
mov eax, dword [esp + 0x70]
add ecx, dword [edi + 0x10]
and byte [ecx + eax], 0xfe
imul ecx, dword [edi + 0x18], 0xc
mov eax, dword [esp + 0x70]
add ecx, dword [edi + 0x10]
and byte [ecx + eax], 0xf7
mov ecx, dword [esp + 0x64]
and ecx, 0xfffffff6
jmp 0x430c16
test eax, eax
jne 0x430c1a
xor edx, edx
inc edx
cmp dword [esp + 0x24], eax
jne 0x430c1d
mov eax, ecx
and eax, edx
jne 0x430ac4
cmp dword [esp + 0x20], eax
je 0x430ac4
cmp dword [esp + 0x30], eax
jne 0x430f4d
test eax, eax
jne 0x430c1d
test esi, esi
je 0x430c1d
or edx, 0xffffffff
mov ecx, ebx
call fcn.0041855c
mov edx, dword [esp + 0x28]
mov ecx, ebx
mov esi, eax
call fcn.0041855c
xor ecx, ecx
mov edx, esi
inc ecx
push ecx
push eax
xor ecx, ecx
call fcn.0043ff5d
pop ecx
pop ecx
test eax, eax
je 0x430f4d
mov ecx, dword [esp + 0x64]
jmp 0x430c1a
test dl, cl
je 0x430b50
test eax, eax
jne 0x430c1a
cmp dword [esp + 0x24], eax
jne 0x430c1a
cmp dword [esp + 0x3c], eax
je 0x430b36
mov eax, dword [esp + 0x48]
cmp eax, dword [esp + 0x6c]
jne 0x430f4d
cmp dword [esp + 0x40], 0
je 0x430c1a
cmp esi, dword [esp + 0x68]
jne 0x430f4d
jmp 0x430c1a
test eax, eax
jne 0x430b5e
cmp dword [esp + 0x24], eax
je 0x430f4d
cmp dword [esp + 0x78], 0
jl 0x430b92
mov edx, edi
mov ecx, ebx
call fcn.0042de95
mov ecx, ebx
call fcn.0041b712
xor eax, eax
mov edx, edi
inc eax
mov ecx, ebx
push eax
lea eax, [esp + 0x68]
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
call fcn.0042e347
add esp, 0x10
mov edx, dword [esp + 0x70]
test edx, edx
js 0x430f4d
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx + edx*8 + 4]
mov esi, dword [ecx + edx*8]
mov dword [esp + 0x84], eax
mov eax, 0xfff3
mov word [ecx + edx*8 + 6], ax
mov eax, dword [esp + 0x18]
cmp word [esp + 0x86], ax
jb 0x430bd6
sub dword [esi + 4], 1
jne 0x430bd6
mov edx, esi
mov ecx, ebx
call fcn.0042c5d7
mov ecx, dword [edi + 0x10]
mov eax, dword [esp + 0x70]
push 8
pop edx
and dword [ecx + eax*8], 0
mov ecx, dword [edi + 0x10]
mov eax, dword [esp + 0x70]
and dword [ecx + eax*8 + 4], 0
imul ecx, dword [edi + 0x18], 0xc
mov eax, dword [esp + 0x70]
add ecx, dword [edi + 0x10]
and byte [ecx + eax], 0xfe
imul ecx, dword [edi + 0x18], 0xc
mov eax, dword [esp + 0x70]
add ecx, dword [edi + 0x10]
or byte [ecx + eax], dl
mov ecx, dword [esp + 0x64]
and ecx, 0xfffffffe
or ecx, edx
mov dword [esp + 0x64], ecx
xor edx, edx
inc edx
cmp dword [esp + 0x54], 0
mov ebx, ecx
je 0x430c35
cmp dword [esp + 0x38], 0
je 0x430c32
or ebx, 2
jmp 0x430c35
and ebx, 0xfffffffd
cmp dword [esp + 0x58], 0
je 0x430c4b
cmp dword [esp + 0x5c], 0
je 0x430c48
or ebx, 4
jmp 0x430c4b
and ebx, 0xfffffffb
cmp dword [esp + 0x20], 0
je 0x430c60
cmp dword [esp + 0x30], 0
je 0x430c5d
or ebx, edx
jmp 0x430c60
and ebx, 0xfffffffe
cmp dword [esp + 0x78], 0
jl 0x430d2b
cmp ebx, 7
jne 0x430cf4
mov ebx, dword [esp + 0x1c]
mov ecx, ebx
mov edx, dword [esp + 0x28]
call fcn.0041855c
mov edx, dword [edi + 0x18]
mov esi, eax
imul ecx, dword [edi + 0x18], 0xd
neg edx
mov eax, dword [esp + 0x18]
and edx, 7
add edx, dword [edi + 0x10]
add edx, ecx
mov ecx, dword [esp + 0x78]
cmp word [esi + 6], ax
jb 0x430cad
mov eax, dword [esi]
inc dword [eax + 4]
mov eax, dword [esp + 0x18]
cmp word [edx + ecx*8 + 6], ax
jb 0x430ce3
mov eax, dword [edx + ecx*8]
mov dword [esp + 0x48], eax
mov eax, dword [esi]
mov dword [edx + ecx*8], eax
mov eax, dword [esi + 4]
mov dword [edx + ecx*8 + 4], eax
mov eax, dword [esp + 0x48]
sub dword [eax + 4], 1
jne 0x43077d
push eax
push ebx
call fcn.0042c588
pop ecx
pop ecx
jmp 0x43077d
mov eax, dword [esi]
mov dword [edx + ecx*8], eax
mov eax, dword [esi + 4]
mov dword [edx + ecx*8 + 4], eax
jmp 0x43077d
mov esi, dword [esp + 0x1c]
mov edx, edi
mov ecx, esi
call fcn.0042de95
mov ecx, esi
call fcn.0041b712
xor eax, eax
mov edx, edi
inc eax
mov ecx, esi
push eax
lea eax, [esp + 0x68]
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
call fcn.0042e347
mov ecx, dword [esp + 0x74]
add esp, 0x10
jmp 0x430d2f
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x70]
test edx, edx
js 0x430d47
imul eax, dword [edi + 0x18], 0xc
add eax, dword [edi + 0x10]
mov byte [eax + edx], bl
mov edx, dword [esp + 0x70]
jmp 0x430d7d
mov eax, dword [esi + 0x130]
mov esi, dword [esp + 0xc]
cmp esi, dword [eax + 0x15c]
mov esi, dword [esp + 0x1c]
jne 0x430d7d
test dword [edi], 0x400000
je 0x430d7d
xor ecx, ebx
test cl, 6
jne 0x430f4b
xor ecx, ecx
not bl
movzx eax, bl
inc ecx
and eax, ecx
mov dword [edi + 0x2c], eax
cmp dword [esp + 0x3c], 0
je 0x430db9
test edx, edx
js 0x430f45
mov eax, dword [edi + 0x10]
mov ebx, dword [esp + 0x48]
mov ecx, dword [eax + edx*8 + 4]
mov dword [eax + edx*8 + 4], ebx
test ebx, ebx
je 0x430da2
inc dword [ebx + 4]
test ecx, ecx
je 0x430db5
sub dword [ecx + 4], 1
jne 0x430db5
push ecx
push esi
call fcn.0042c668
pop ecx
pop ecx
mov edx, dword [esp + 0x70]
cmp dword [esp + 0x40], 0
je 0x430df3
test edx, edx
js 0x430f45
mov eax, dword [edi + 0x10]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + edx*8]
mov dword [eax + edx*8], ebx
test ebx, ebx
je 0x430ddc
inc dword [ebx + 4]
test ecx, ecx
je 0x430def
sub dword [ecx + 4], 1
jne 0x430def
push ecx
push esi
call fcn.0042c668
pop ecx
pop ecx
mov edx, dword [esp + 0x70]
cmp dword [esp + 0x44], 0
mov ebx, dword [esp + 0x1c]
je 0x43077d
test edx, edx
js 0x430e61
mov edx, dword [esp + 0x28]
mov ecx, ebx
call fcn.0041855c
mov edx, dword [edi + 0x10]
mov ecx, eax
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x70]
mov dword [esp + 0x48], ecx
cmp word [ecx + 6], ax
jb 0x430e31
mov ecx, dword [ecx]
inc dword [ecx + 4]
mov ecx, dword [esp + 0x48]
cmp word [edx + esi*8 + 6], ax
jb 0x430e50
mov eax, dword [edx + esi*8]
mov dword [esp + 0x48], eax
mov eax, dword [ecx]
mov dword [edx + esi*8], eax
mov eax, dword [ecx + 4]
mov dword [edx + esi*8 + 4], eax
jmp 0x430cc7
mov eax, dword [ecx]
mov dword [edx + esi*8], eax
mov eax, dword [ecx + 4]
mov dword [edx + esi*8 + 4], eax
jmp 0x43077d
mov eax, dword [ebx + 0x130]
mov esi, dword [esp + 0xc]
cmp esi, dword [eax + 0x15c]
jne 0x430f4d
test dword [edi], 0x400000
je 0x430f4d
mov ecx, dword [esp + 0x14]
mov dword [edi + 0x28], ecx
jmp 0x430785
cmp dword [esp + 0x2c], 0xffffffff
je 0x4307e8
test dword [edi], 0x1000000
je 0x4307e8
and dword [esp + 0x34], 0
lea eax, [esp + 0x60]
and dword [esp + 0x60], 0
mov edx, edi
push eax
lea eax, [esp + 0x38]
mov ecx, ebx
push eax
lea eax, [esp + 0x6c]
push eax
push esi
call fcn.0042e1b7
add esp, 0x10
test eax, eax
je 0x4307e8
cmp dword [esp + 0x3c], 0
jne 0x430f30
cmp dword [esp + 0x40], 0
jne 0x430f30
cmp dword [esp + 0x44], 0
je 0x430f1a
or edx, 0xffffffff
mov ecx, ebx
call fcn.004190f5
mov edx, dword [esp + 0x28]
mov ecx, ebx
mov esi, eax
call fcn.0041855c
mov edx, dword [esp + 0x60]
xor ecx, ecx
inc ecx
push ecx
push eax
push esi
push 0
mov ecx, ebx
call fcn.00440d50
mov esi, dword [esp + 0x1c]
add esp, 0x10
cmp dword [esp + 0x20], 0
je 0x4307e8
cmp dword [esp + 0x30], 0
jne 0x4307e8
mov edx, dword [esp + 0x34]
mov ecx, ebx
push 0
push esi
call fcn.0042fa76
pop ecx
pop ecx
jmp 0x4307e8
mov ebx, dword [esp + 0x1c]
jmp 0x430f4d
mov ebx, esi
cmp dword [ebp + 0x1c], 0
je 0x43065f
push str.not_configurable
push 0x600179e
mov edx, str.duk_hobject_props.c
jmp 0x430f77
push str.not_extensible
push 0x6001796
mov edx, 0x6d4ae4
mov ecx, ebx
call fcn.00415b20
int3