Function at 0x100551b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100f1050
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x10130fc4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x6c], 0
push 5
push str.entry
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
dec eax
neg eax
mov byte [ebp - 4], 0
sbb eax, eax
inc eax
mov dword [esi + 0xa4], eax
cmp edx, 0x10
jb 0x10055264
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005525a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100569f2
push edx
push ecx
call fcn.100a20af
add esp, 8
push 5
push str.layer
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
dec eax
neg eax
mov byte [ebp - 4], 0
sbb eax, eax
inc eax
mov dword [esi + 0xa8], eax
cmp edx, 0x10
jb 0x100552db
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100552d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100569f7
push edx
push ecx
call fcn.100a20af
add esp, 8
push 0xd
push str.register_func
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
lea ecx, [esi + 0x24]
neg eax
sbb eax, eax
inc eax
push eax
call fcn.1005d210
mov edx, dword [ebp - 0x14]
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x10055355
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005534b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100569fc
push edx
push ecx
call fcn.100a20af
add esp, 8
push 4
push str.icon
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
mov dword [esi + 0xb0], eax
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x100553c6
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100553bc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a01
push edx
push ecx
call fcn.100a20af
add esp, 8
call fcn.10009940
mov ecx, eax
test ecx, ecx
je 0x10056a06
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x44], eax
push 0x100fab24
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 5
call fcn.10031280
test al, al
jne 0x10055406
push 0
push 0x100fab24
lea ecx, [ebp - 0x44]
call fcn.1000a210
push 9
push str.icon_path
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 6
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
mov edx, dword [eax]
xor eax, eax
mov ecx, edx
mov byte [ebp - 4], 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10055467
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.1000b140
lea ecx, [esi + 0xb4]
mov byte [ebp - 4], 9
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x100554a2
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b140
mov edx, dword [ebp - 0x14]
mov byte [ebp - 4], 8
cmp edx, 8
jb 0x100554e0
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100554d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a10
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x48]
or edi, 0xffffffff
mov byte [ebp - 4], 7
add edx, 0xfffffff0
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10055501
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 6
cmp edx, 0x10
jb 0x10055539
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005552f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a15
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x44]
mov eax, edi
mov dword [ebp - 0x30], 0
add edx, 0xfffffff0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10055569
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10009940
mov ecx, eax
test ecx, ecx
je 0x10056a1a
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x44], eax
push 0x100fab24
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xa
call fcn.10031280
test al, al
jne 0x100555a9
push 0
push 0x100fab24
lea ecx, [ebp - 0x44]
call fcn.1000a210
push 0xc
push str.wnd_model_id
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
mov edx, dword [eax]
xor eax, eax
mov ecx, edx
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
lea eax, [ecx + 2]
mov dword [ebp - 0x48], eax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10055610
sub ecx, dword [ebp - 0x48]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.1000b140
lea ecx, [esi + 0x17c]
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x1005564c
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b140
mov edx, dword [ebp - 0x14]
mov byte [ebp - 4], 0xd
cmp edx, 8
jb 0x1005568a
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10055680
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a24
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x4c]
mov eax, edi
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100556a8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 0xb
cmp edx, 0x10
jb 0x100556e0
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100556d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a29
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x44]
mov eax, edi
mov dword [ebp - 0x30], 0
add edx, 0xfffffff0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10055710
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10009940
mov ecx, eax
test ecx, ecx
je 0x10056a2e
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x44], eax
push 0x100fab24
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xf
call fcn.10031280
test al, al
jne 0x10055750
push 0
push 0x100fab24
lea ecx, [ebp - 0x44]
call fcn.1000a210
push 0x10
push str.wnd_display_name
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
mov edx, dword [eax]
xor eax, eax
mov ecx, edx
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
lea eax, [ecx + 2]
mov dword [ebp - 0x4c], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100557b4
sub ecx, dword [ebp - 0x4c]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.1000b140
lea ecx, [esi + 0x194]
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x100557f0
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b140
mov edx, dword [ebp - 0x14]
mov byte [ebp - 4], 0x12
cmp edx, 8
jb 0x1005582e
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10055824
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a38
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x48]
mov eax, edi
mov byte [ebp - 4], 0x11
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1005584c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 0x10
cmp edx, 0x10
jb 0x10055884
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005587a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a3d
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x44]
mov eax, edi
mov dword [ebp - 0x30], 0
add edx, 0xfffffff0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100558b4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10009940
mov ecx, eax
test ecx, ecx
je 0x10056a42
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x44], eax
push 0x100fab24
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x14
call fcn.10031280
test al, al
jne 0x100558f4
push 0
push 0x100fab24
lea ecx, [ebp - 0x44]
call fcn.1000a210
push 9
push str.wnd_title
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
mov edx, dword [eax]
xor eax, eax
mov ecx, edx
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
lea eax, [ecx + 2]
mov dword [ebp - 0x4c], eax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10055960
sub ecx, dword [ebp - 0x4c]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.1000b140
lea ecx, [esi + 0x1ac]
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x1005599c
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b140
mov edx, dword [ebp - 0x14]
mov byte [ebp - 4], 0x17
cmp edx, 8
jb 0x100559da
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100559d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a4c
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x48]
mov eax, edi
mov byte [ebp - 4], 0x16
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100559f8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 0x15
cmp edx, 0x10
jb 0x10055a30
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10055a26
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a51
push edx
push ecx
call fcn.100a20af
add esp, 8
mov edx, dword [ebp - 0x44]
mov eax, edi
mov dword [ebp - 0x30], 0
add edx, 0xfffffff0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10055a60
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 8
push str.is_child
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
dec eax
neg eax
mov byte [ebp - 4], 0
sbb eax, eax
inc eax
mov dword [esi + 0xac], eax
cmp edx, 0x10
jb 0x10055ad7
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10055acd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a56
push edx
push ecx
call fcn.100a20af
add esp, 8
push 9
push str.is_border
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
dec eax
neg eax
mov byte [ebp - 4], 0
sbb eax, eax
inc eax
mov dword [esi + 0x124], eax
cmp edx, 0x10
jb 0x10055b4e
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10055b44
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a5b
push edx
push ecx
call fcn.100a20af
add esp, 8
push 0xe
push str.is_tool_window
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
dec eax
neg eax
mov byte [ebp - 4], 0
sbb eax, eax
inc eax
mov dword [esi + 0x128], eax
cmp edx, 0x10
jb 0x10055bc5
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10055bbb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a60
push edx
push ecx
call fcn.100a20af
add esp, 8
push 0x12
push str.enable_minimizebox
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edx, dword [ebp - 0x14]
cmp eax, 1
mov byte [ebp - 4], 0
sete al
mov byte [esi + 0x170], al
cmp edx, 0x10
jb 0x10055c3c
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10055c32
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056a65
push edx
push ecx
call fcn.100a20af
add esp, 8
push 0xe
push str.is_shadow_edge
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
mov byte [ebp - 4], 0
neg eax
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x130], eax
call fcn.10008890
push 0xc
push str.default_show
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
mov byte [ebp - 4], 0
neg eax
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x138], eax
call fcn.10008890
push 0x11
push str.insertion_desktop
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
mov byte [ebp - 4], 0
neg eax
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x13c], eax
call fcn.10008890
push 0xa
push str.can_resize
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x20
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
neg eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x148], eax
call fcn.10008890
push 7
push str.min_gap
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0xffffffffffffffff
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [esi + 0x150], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0xf
push str.direct_navigate
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x22
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
cmp eax, 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x28]
sete al
movzx eax, al
mov dword [esi + 0x14c], eax
call fcn.10008890
push 0x12
push str.new_link_open_type
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [esi + 0x16c], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0x16
push str.enable_wab_full_screen
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
neg eax
sbb eax, eax
inc eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x28]
mov dword [esi + 0x1ec], eax
call fcn.10008890
push 9
push str.ie_engine
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
mov byte [ebp - 4], 0
neg eax
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x1f0], eax
call fcn.10008890
push 0xe
push str.trans_to_child
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
mov byte [ebp - 4], 0
neg eax
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x140], eax
call fcn.10008890
push 0xf
push 0x101004b4
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x27
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
dec eax
mov byte [ebp - 4], 0
neg eax
lea ecx, [ebp - 0x28]
sbb eax, eax
inc eax
mov dword [esi + 0x144], eax
call fcn.10008890
push 0xd
push str.parent_handle
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
mov byte [ebp - 4], 0x28
push 0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [esi + 0x30], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0xa
push str.owner_hwnd
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x29
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [esi + 0x134], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0xa
push str.owner_hwnd
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [esi + 0x34], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 8
push str.pos.left
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x2b
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov edi, eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x38], edi
call fcn.10008890
push 7
push str.pos.top
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov esi, eax
mov byte [ebp - 4], 0
mov dword [ebp - 0x34], esi
lea ecx, [ebp - 0x28]
call fcn.10008890
push 9
push str.pos.right
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0xa
push str.pos.bottom
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x2e
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0
call fcn.10008890
sub dword [ebp - 0x44], esi
lea ecx, [ebp - 0x28]
mov esi, dword [ebp - 0x48]
push 0xb
sub esi, edi
mov dword [ebp - 0x18], 0
push str.min_size.cx
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push esi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0
mov esi, eax
call fcn.10008890
push 0xb
push str.min_size.cy
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push dword [ebp - 0x44]
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x30
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0
call fcn.10008890
mov edi, dword [ebp - 0x50]
mov dword [edi + 0x164], esi
mov ecx, dword [ebp - 0x4c]
mov eax, dword [edi + 0x160]
mov dword [edi + 0x168], ecx
mov dword [ebp - 0x58], eax
cmp dword [edi + 0x15c], esi
jl 0x10056209
mov eax, dword [edi + 0x15c]
mov dword [ebp - 0x5c], eax
cmp dword [edi + 0x160], ecx
jge 0x10056217
push dword [ebp - 0x44]
lea ecx, [edi + 0x5c]
push dword [ebp - 0x48]
call fcn.10058d20
push 8
push 0x10100524
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x31
push eax
lea ecx, [ebp + 8]
call fcn.10076740
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x51], al
mov byte [ebp - 4], 0
call fcn.10008890
cmp byte [ebp - 0x51], 0
je 0x100563ff
push 0xd
push str.workarea.left
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0xc
push str.workarea.top
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x33
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x60], eax
mov byte [ebp - 4], 0
call fcn.10008890
push 0xe
push str.workarea.right
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x34
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
mov esi, eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x5c], esi
call fcn.10008890
push 0xf
push str.workarea.bottom
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x35
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x58], eax
mov byte [ebp - 4], 0
call fcn.10008890
movups xmm1, xmmword [ebp - 0x64]
mov ecx, dword [ebp - 0x64]
sub esi, ecx
movups xmmword [ebp - 0x20], xmm1
test esi, esi
jle 0x10056395
mov eax, dword [edi + 0xd4]
sub eax, dword [edi + 0xcc]
cmp esi, eax
jge 0x10056395
add eax, ecx
mov dword [ebp - 0x18], eax
movups xmm1, xmmword [ebp - 0x20]
movaps xmm0, xmm1
psrldq xmm0, 0xc
movd ecx, xmm0
movaps xmm0, xmm1
psrldq xmm0, 4
movd edx, xmm0
sub ecx, edx
test ecx, ecx
jle 0x100563cc
mov eax, dword [edi + 0xd8]
sub eax, dword [edi + 0xd0]
cmp ecx, eax
jge 0x100563cc
add eax, edx
mov dword [ebp - 0x14], eax
movups xmm1, xmmword [ebp - 0x20]
movups xmmword [edi + 0xe0], xmm1
mov eax, dword [edi + 0xe8]
sub eax, dword [edi + 0xe0]
test eax, eax
jg 0x100563f7
mov eax, dword [edi + 0xec]
sub eax, dword [edi + 0xe4]
test eax, eax
jg 0x100563f7
xor al, al
jmp 0x100563f9
mov al, 1
mov byte [edi + 0xdc], al
push 0x100fab24
lea ecx, [ebp - 0x48]
call fcn.100079d0
push 0xf
push 0x10100570
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x36
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x37
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
mov edx, dword [eax]
mov ecx, edx
mov byte [ebp - 4], 0x38
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10056460
sub ecx, esi
lea eax, [edi + 0x40]
sar ecx, 1
push ecx
push edx
mov ecx, eax
mov dword [ebp - 0x58], eax
call fcn.1000b140
mov edx, dword [ebp - 0x4c]
or esi, 0xffffffff
mov byte [ebp - 4], 0x37
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1005649f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x28]
call fcn.10008890
mov edx, dword [ebp - 0x48]
mov eax, esi
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100564c5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [edi + 0x58]
call fcn.10066b00
test eax, eax
je 0x100566af
mov eax, dword [ebp - 0x50]
mov edi, dword [edi + 0x15c]
mov esi, dword [eax + 0x160]
mov eax, dword [eax + 4]
push eax
push eax
call fcn.1004e0e0
fstp dword [esp]
push esi
lea eax, [ebp - 0x20]
push edi
push eax
call fcn.1004f430
push 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x38], xmm0
call fcn.1004e0e0
mov esi, dword [ebp - 0x58]
add esp, 0x18
fstp dword [ebp - 0x44]
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x1005651d
mov eax, dword [esi]
push eax
lea ecx, [ebp - 0x48]
call fcn.100079d0
movss xmm0, dword [ebp - 0x44]
lea eax, [ebp - 0x48]
cvtps2pd xmm0, xmm0
sub esp, 8
mov byte [ebp - 4], 0x39
movsd qword [esp], xmm0
push str.___real_device_scale_factor_f
push eax
call fcn.10031020
mov edi, dword [ebp - 0x50]
lea eax, [ebp - 0x44]
add esp, 0x10
mov ecx, edi
push eax
call fcn.10056e00
cmp dword [edi + 0x150], 0
jle 0x10056634
push dword [edi + 4]
lea eax, [ebp - 0x20]
push eax
call fcn.1004f370
mov ecx, dword [ebp - 0x18]
add esp, 8
sub ecx, dword [ebp - 0x20]
movd xmm0, dword [edi + 0x15c]
movss xmm3, dword [ebp - 0x44]
cvtdq2ps xmm0, xmm0
mov eax, dword [edi + 0x160]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x58], eax
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x100ffed0]
cvttss2si ecx, xmm1
movd xmm1, dword [edi + 0x15c]
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x38], ecx
movd xmm0, ecx
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x1c]
mulss xmm1, xmm3
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, dword [edi + 0x160]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm1
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x30], eax
mov eax, dword [edi + 0x15c]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x5c], eax
mulss xmm0, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x100ffed0]
cvttss2si ecx, xmm1
movd xmm1, dword [edi + 0x160]
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x34], ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm3
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x2c], eax
jmp 0x10056639
movss xmm3, dword [ebp - 0x44]
cvtps2pd xmm0, xmm3
sub esp, 8
lea eax, [ebp - 0x48]
movsd qword [esp], xmm0
push str.___force_device_scale_factor_f
push eax
call fcn.10031020
mov eax, dword [ebp - 0x48]
add esp, 0x10
mov edx, eax
lea ecx, [edx + 2]
mov dword [ebp - 0x58], ecx
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x10056660
sub edx, dword [ebp - 0x58]
mov ecx, esi
sar edx, 1
push edx
push eax
call fcn.1000b140
movss xmm0, dword [ebp - 0x44]
or esi, 0xffffffff
mov edx, dword [ebp - 0x48]
mov eax, esi
movss dword [edi + 0x154], xmm0
add edx, 0xfffffff0
movss dword [edi + 0x158], xmm0
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100566af
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
movups xmm0, xmmword [ebp - 0x38]
sub esp, 0x10
lea ecx, [edi + 0x5c]
mov eax, esp
movups xmmword [eax], xmm0
call fcn.10058d10
push 0x100fab24
lea ecx, [ebp - 0x50]
call fcn.100079d0
push 3
push 0x100fd4f4
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x3a
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x3b
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
push dword [eax]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3c
call fcn.10007ba0
lea ecx, [edi + 0x74]
mov byte [ebp - 4], 0x3d
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x1005673f
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b140
lea ecx, [ebp - 0x28]
call fcn.100088e0
mov edx, dword [ebp - 0x58]
mov eax, esi
mov byte [ebp - 4], 0x3b
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10056765
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x40]
call fcn.10008890
mov edx, dword [ebp - 0x50]
mov eax, esi
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1005678b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 7
push str.timeout
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x3e
push eax
lea ecx, [ebp + 8]
call fcn.10075f90
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0
mov esi, eax
call fcn.10008890
push 0x100fab24
lea ecx, [ebp - 0x50]
mov dword [edi + 0x108], esi
call fcn.100079d0
push 9
push str.retry_url
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x3f
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x40
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x41
push dword [eax]
call fcn.100079d0
lea eax, [ebp - 0x68]
mov ecx, edi
push eax
call fcn.10056a70
mov edx, dword [ebp - 0x58]
or esi, 0xffffffff
mov byte [ebp - 4], 0x43
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1005685b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x40]
call fcn.10008890
mov edx, dword [ebp - 0x50]
mov eax, esi
mov byte [ebp - 4], 0x45
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10056881
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x68]
lea ecx, [ebp - 0x28]
call fcn.10007ba0
lea ecx, [edi + 0x8c]
mov byte [ebp - 4], 0x46
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x100568ae
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b140
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x45
call fcn.100088e0
push 0x100fab24
lea ecx, [ebp - 0x48]
call fcn.100079d0
push 0xa
push 0x100feb18
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x47
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.1000b050
push 0xfde9
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x48
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp + 8]
call fcn.10076590
mov edx, dword [eax]
mov ecx, edx
mov byte [ebp - 4], 0x49
lea eax, [ecx + 2]
mov dword [ebp - 0x4c], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10056917
sub ecx, dword [ebp - 0x4c]
sar ecx, 1
push ecx
push edx
mov ecx, 0x1012f844
call fcn.1000b140
mov edx, dword [ebp - 0x44]
mov eax, esi
mov byte [ebp - 4], 0x48
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10056951
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x28]
call fcn.10008890
mov edx, dword [ebp - 0x48]
mov eax, esi
mov byte [ebp - 4], 0x45
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10056977
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [edi + 0xa4], 0
je 0x1005699b
lea eax, [edi + 0x74]
push eax
lea ecx, [ebp - 0x28]
call fcn.10007b10
cmp dword [ebp - 0x18], 0
mov eax, 3
jne 0x1005699e
xor edi, edi
jmp 0x100569a3
mov eax, dword [ebp - 0x6c]
mov edi, 1
test al, 1
je 0x100569af
lea ecx, [ebp - 0x28]
call fcn.100088e0
mov eax, dword [ebp - 0x68]
mov byte [ebp - 4], 0
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], esi
dec esi
test esi, esi
jg 0x100569cb
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
lea ecx, [ebp + 8]
call fcn.100726b0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100a242e
mov esp, ebp
pop ebp
ret 0x18
call fcn.100c042a
call fcn.100c042a
call fcn.100c042a
call fcn.100c042a
push 0x80004005
call fcn.10009730
call fcn.100c042a
call fcn.100c042a
push 0x80004005
call fcn.10009730
call fcn.100c042a
call fcn.100c042a
push 0x80004005
call fcn.10009730
call fcn.100c042a
call fcn.100c042a
push 0x80004005
call fcn.10009730
call fcn.100c042a
call fcn.100c042a
call fcn.100c042a
call fcn.100c042a
call fcn.100c042a
call fcn.100c042a
int3