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

Disassembly:
push 0xffffffffffffffff
push 0x5d3963
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xac0
mov eax, dword [ecx + 0xbc]
push ebx
push ebp
push esi
push edi
push eax
call fcn.005b5750
mov ecx, dword [eax + 4]
mov esi, dword [sym.imp.USER32.dll_GetSubMenu]
push 5
push ecx
call esi
push eax
call fcn.005b5750
mov edx, dword [eax + 4]
xor ebx, ebx
push ebx
push edx
mov dword [esp + 0xa8], eax
call esi
push eax
call fcn.005b5750
mov ebp, eax
cmp ebp, ebx
mov dword [esp + 0x34], ebp
je 0x441030
mov eax, dword [ebp + 4]
mov esi, dword [sym.imp.USER32.dll_DeleteMenu]
push 0x400
push ebx
push eax
call esi
cmp eax, ebx
je 0x4407e9
mov ecx, dword [ebp + 4]
push 0x400
push ebx
push ecx
call esi
cmp eax, ebx
jne 0x4407d9
mov edx, dword [0x87a768]
mov dword [esp + 0x30], edx
mov dword [esp + 0xad8], ebx
call fcn.00596b38
lea esi, [eax + 0x1c]
mov ecx, eax
push esi
push 0x17d4
call fcn.00403e80
test eax, eax
je 0x440857
push 1
mov ecx, esi
call fcn.005b4ba6
cmp eax, ebx
je 0x440857
call fcn.00596b38
lea esi, [eax + 0x1c]
mov ecx, eax
push esi
push 0x17d4
call fcn.00403e80
test eax, eax
je 0x440844
push 1
mov ecx, esi
call fcn.005b4ba6
jmp 0x440846
xor eax, eax
push eax
mov eax, dword [ebp + 4]
push 0x17d4
push ebx
push eax
call dword [sym.imp.USER32.dll_AppendMenuW]
mov ecx, 0x87f4e0
call fcn.00426a20
cmp eax, ebx
je 0x44101c
lea edi, [eax + 0x491d]
mov dword [esp + 0x90], edi
cmp dword [edi + 4], ebx
je 0x4408ab
mov eax, dword [edi + 8]
xor ebp, ebp
cmp eax, ebx
jbe 0x4408a7
mov ecx, dword [edi + 4]
mov esi, dword [ecx + ebp*4]
cmp esi, ebx
je 0x44089f
lea edx, [esi + 0xc]
push 1
push edx
call fcn.005ad1bb
mov esi, dword [esi]
cmp esi, ebx
jne 0x44088e
mov eax, dword [edi + 8]
inc ebp
cmp ebp, eax
jb 0x440884
mov ebp, dword [esp + 0x34]
mov eax, dword [edi + 4]
push eax
call fcn.005b44c3
mov ecx, dword [edi + 0x14]
add esp, 4
mov dword [edi + 4], ebx
mov dword [edi + 0xc], ebx
mov dword [edi + 0x10], ebx
call fcn.005af0e0
lea ecx, [esp + 0x54]
mov dword [edi + 0x14], ebx
mov dword [esp + 0x2c], 0x17d5
call fcn.0041b1a0
lea ecx, [esp + 0x60]
mov byte [esp + 0xad8], 1
call fcn.0041b1a0
lea ecx, [esp + 0x6c]
mov byte [esp + 0xad8], 2
call fcn.0041b1a0
lea ecx, [esp + 0x78]
mov byte [esp + 0xad8], 3
call fcn.0041b1a0
lea ecx, [esp + 0x84]
mov byte [esp + 0xad8], 4
call fcn.0041b1a0
push 0x87f5fc
lea ecx, [esp + 0x54]
mov byte [esp + 0xadc], 5
call fcn.00401750
push 0x20
lea ecx, [esp + 0x18]
mov byte [esp + 0xadc], 6
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], ebx
call fcn.00401510
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], ebx
push 0x623528
lea ecx, [esp + 0x18]
mov byte [esp + 0xadc], 7
mov word [eax], bx
call fcn.00401610
mov eax, dword [esp + 0x50]
mov esi, 1
cmp eax, esi
je 0x44099f
push 0x5c
lea ecx, [esp + 0x7c]
call fcn.00405b40
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x7c]
call fcn.004018e0
mov edx, dword [esp + 0x14]
mov dword [esp + 0x1c], ebx
push 0x623544
lea ecx, [esp + 0x18]
mov word [edx], bx
call fcn.00401610
cmp dword [esp + 0x1c], ebx
je 0x4409fc
lea eax, [esp + 0x14]
lea ecx, [esp + 0x60]
push eax
mov dword [esp + 0x54], esi
call fcn.00405c40
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x74], ebx
push 0x2e
mov word [ecx], bx
lea ecx, [esp + 0x64]
call fcn.004015e0
cmp eax, ebx
jle 0x440a16
lea edx, [esp + 0x6c]
inc eax
push edx
push eax
lea ecx, [esp + 0x68]
call fcn.00401350
jmp 0x440a16
mov eax, dword [esp + 0x60]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x68], ebx
mov word [eax], bx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x74], ebx
mov word [ecx], bx
lea ecx, [esp + 0xbc]
call fcn.0052f0e0
lea edx, [esp + 0x54]
lea ecx, [esp + 0x84]
push edx
mov byte [esp + 0xadc], 8
call fcn.00405c40
push 0x3a
lea ecx, [esp + 0x88]
call fcn.00405b40
lea eax, [esp + 0x78]
lea ecx, [esp + 0x84]
push eax
call fcn.004018e0
mov ecx, dword [esp + 0x60]
cmp word [ecx], bx
je 0x440a82
push 0x5c
lea ecx, [esp + 0x88]
call fcn.00405b40
lea edx, [esp + 0x60]
lea ecx, [esp + 0x84]
push edx
call fcn.004018e0
mov eax, dword [esp + 0x84]
push ebx
push eax
lea ecx, [esp + 0xc4]
call fcn.0052f1a5
cmp eax, ebx
je 0x440f41
lea ecx, [esp + 0xbc]
call fcn.0052f3cb
lea ecx, [esp + 0xd8]
mov dword [esp + 0x98], eax
call fcn.0041b6e0
lea ecx, [esp + 0x104]
mov byte [esp + 0xad8], 9
call fcn.00419f90
push str.UTF_8
lea ecx, [esp + 0x108]
mov byte [esp + 0xadc], 0xa
mov dword [esp + 0xf8], ebx
mov dword [esp + 0x104], ebx
call fcn.0041a280
lea ecx, [esp + 0x10]
mov byte [esp + 0xad8], 0xb
call fcn.0053de30
lea ecx, [esp + 0x94]
mov byte [esp + 0xad8], 0xc
push ecx
lea ecx, [esp + 0xc0]
call fcn.0052f49a
push 0x637cb8
push 1
mov ecx, eax
mov byte [esp + 0xae0], 0xd
call fcn.005b4ba6
push eax
lea ecx, [esp + 0x18]
call fcn.0053de50
lea ecx, [esp + 0x94]
mov esi, eax
mov byte [esp + 0xad8], 0xc
call fcn.005b4761
cmp esi, ebx
je 0x440f0f
lea ecx, [esp + 0x10]
call fcn.0053df80
mov ebp, eax
push ebp
call fcn.005b449a
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x441049
push ebp
push edi
lea ecx, [esp + 0x18]
call fcn.0053dfb0
cmp ebp, 4
jb 0x440c39
lea ecx, [esp + 0xd8]
call fcn.0041ba00
push 0x64
lea ecx, [esp + 0xb4]
call fcn.0041c320
lea edx, [esp + 0xd8]
lea ecx, [esp + 0xb0]
push edx
mov byte [esp + 0xadc], 0x14
call fcn.0041c350
mov ax, word [edi]
xor esi, esi
and eax, 0xfefe
cmp eax, 0xfefe
jne 0x440be4
mov esi, 2
jmp 0x440bfa
cmp byte [edi], 0xef
jne 0x440bfa
cmp byte [edi + 1], 0xbb
jne 0x440bfa
cmp byte [edi + 2], 0xbf
jne 0x440bfa
mov esi, 3
cmp esi, ebp
jae 0x440c21
mov edx, ebp
lea ecx, [esp + 0xb0]
sub edx, esi
push ecx
lea eax, [esi + edi]
push edx
push eax
lea ecx, [esp + 0xe4]
call fcn.0041bbd0
add esi, eax
cmp esi, ebp
jb 0x440bfe
mov ecx, dword [esp + 0xb8]
mov byte [esp + 0xad8], 0xc
push ecx
call fcn.005b44c3
add esp, 4
push edi
call fcn.005b44c3
add esp, 4
lea ecx, [esp + 0x10]
call fcn.0053df20
push 0x20
lea ecx, [esp + 0x24]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], ebx
call fcn.0041b410
mov edx, dword [esp + 0x20]
mov dword [esp + 0x28], ebx
push str.Language
lea ecx, [esp + 0x24]
mov byte [esp + 0xadc], 0x15
mov byte [edx], bl
call fcn.0041b5c0
mov ecx, dword [esp + 0xfc]
cmp ecx, ebx
je 0x440ef6
call fcn.0049c460
mov esi, eax
cmp esi, ebx
je 0x440ef6
mov eax, dword [esp + 0x20]
mov ecx, esi
push eax
call fcn.0041cee0
neg eax
sbb eax, eax
inc eax
mov dword [esp + 0x9c], eax
jne 0x440cd2
mov ecx, dword [esp + 0xfc]
push esi
call fcn.0056eda0
mov esi, eax
cmp esi, ebx
jne 0x440ca0
jmp 0x440ef6
cmp esi, ebx
je 0x440ef6
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ebx
push str.value
mov byte [ecx], bl
lea ecx, [esp + 0x24]
call fcn.0041b5c0
mov ecx, dword [esi + 0x20]
cmp ecx, ebx
je 0x440d77
lea edx, [esp + 0x20]
push edx
call fcn.0041b8d0
cmp eax, ebx
je 0x440d77
mov ecx, dword [esi + 0x20]
cmp ecx, ebx
je 0x441127
lea eax, [esp + 0x20]
push eax
call fcn.0041b960
lea ecx, [esp + 0x2d0]
push 0x400
push ecx
mov ecx, eax
call fcn.0041a0a0
push ecx
lea ecx, [esp + 0xc0]
mov edx, esp
mov dword [esp + 0xa0], esp
push edx
call fcn.0052f49a
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0x94]
push edi
call fcn.0041ae40
mov edx, dword [esp + 0x34]
lea ecx, [esp + 0x2d0]
mov eax, edi
push ecx
push eax
mov eax, dword [edx + 4]
inc edi
push ebx
push eax
mov dword [esp + 0x3c], edi
call dword [sym.imp.USER32.dll_AppendMenuW]
mov esi, dword [esi + 0x24]
cmp esi, ebx
je 0x440ef6
mov ecx, esi
call fcn.0049c460
mov ebp, eax
cmp ebp, ebx
je 0x440ef6
mov cl, byte [0x637ca8]
mov esi, 0x637ca8
cmp cl, bl
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x38], ebx
mov eax, 0x637ca9
je 0x440dba
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x440db3
sub eax, 0x637ca8
lea ecx, [esp + 0x38]
dec eax
mov edi, eax
lea edx, [edi + 0x20]
push edx
call fcn.0041b410
mov cl, byte [0x637ca8]
mov eax, dword [esp + 0x38]
cmp cl, bl
je 0x440de8
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
cmp cl, bl
jne 0x440ddd
mov byte [eax], bl
mov dword [esp + 0x40], edi
push str.value
lea ecx, [esp + 0xa8]
mov byte [esp + 0xadc], 0x16
call fcn.00419f00
push 0x20
lea ecx, [esp + 0x48]
mov byte [esp + 0xadc], 0x17
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x48], ebx
call fcn.0041b410
lea eax, [esp + 0x38]
mov ecx, ebp
push eax
mov byte [esp + 0xadc], 0x18
call fcn.0041a3b0
test eax, eax
je 0x440e6a
lea ecx, [esp + 0xa4]
push ecx
mov ecx, ebp
call fcn.0041a3b0
test eax, eax
je 0x440e6a
lea edx, [esp + 0xa4]
mov ecx, ebp
push edx
call fcn.0041a450
push eax
lea ecx, [esp + 0x48]
call fcn.0041a180
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x44]
push eax
mov edi, 0x87f63c
call fcn.00419fe0
mov esi, eax
mov cl, byte [esi]
mov dl, byte [edi]
mov al, cl
cmp cl, dl
jne 0x440ea7
cmp al, bl
je 0x440ea3
mov dl, byte [esi + 1]
mov cl, byte [edi + 1]
mov al, dl
cmp dl, cl
jne 0x440ea7
add esi, 2
add edi, 2
cmp al, bl
jne 0x440e7f
xor eax, eax
jmp 0x440eac
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x440eba
mov eax, dword [esp + 0x2c]
dec eax
mov dword [0x87f5b4], eax
mov ecx, dword [esp + 0x44]
mov byte [esp + 0xad8], 0x17
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0xa8]
mov byte [esp + 0xadc], 0x16
push edx
call fcn.005b44c3
mov eax, dword [esp + 0x40]
mov byte [esp + 0xae0], 0x15
push eax
call fcn.005b44c3
add esp, 0xc
mov ecx, dword [esp + 0x20]
mov byte [esp + 0xad8], 0xc
push ecx
call fcn.005b44c3
mov ebp, dword [esp + 0x38]
add esp, 4
lea ecx, [esp + 0x10]
mov byte [esp + 0xad8], 0xb
call fcn.0053de40
lea ecx, [esp + 0xd8]
mov byte [esp + 0xad8], 8
call fcn.0041a520
cmp dword [esp + 0x98], ebx
jne 0x440a9f
push ebx
push ebx
push 0x800
mov ecx, ebp
call fcn.0040bf80
push 0x1779
call fcn.00596b38
mov ecx, eax
call fcn.004057e0
push eax
push 0x1779
push ebx
mov ecx, ebp
call fcn.0040bf80
push 0x177a
call fcn.00596b38
mov ecx, eax
call fcn.004057e0
push eax
push 0x177a
push ebx
mov ecx, ebp
call fcn.0040bf80
mov ecx, 0xb
xor eax, eax
lea edi, [esp + 0x110]
lea edx, [esp + 0x110]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x208]
push 1
mov dword [esp + 0x138], ecx
mov ecx, dword [esp + 0xa4]
push edx
push ebx
mov dword [esp + 0x11c], 0x2c
mov dword [esp + 0x120], 0x40
mov dword [esp + 0x144], 0x64
call fcn.0040bfa0
lea ecx, [esp + 0xbc]
mov byte [esp + 0xad8], 7
call fcn.0052f11f
mov eax, dword [esp + 0x14]
mov byte [esp + 0xad8], 6
push eax
call fcn.005b44c3
add esp, 4
lea ecx, [esp + 0x50]
mov byte [esp + 0xad8], bl
call fcn.004012d0
lea ecx, [esp + 0x30]
mov dword [esp + 0xad8], 0xffffffff
call fcn.005b4761
mov ecx, dword [esp + 0xad0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xacc
ret
lea ecx, [esp + 0x10]
mov byte [esp + 0xad8], 0xb
call fcn.0053de40
lea ecx, [esp + 0xd8]
mov byte [esp + 0xad8], 0xf
call fcn.0041ba00
mov edx, dword [esp + 0x104]
mov byte [esp + 0xad8], 0xe
push edx
call fcn.005b44c3
add esp, 4
lea ecx, [esp + 0xd8]
mov byte [esp + 0xad8], 8
call fcn.0041b790
lea ecx, [esp + 0xbc]
mov byte [esp + 0xad8], 7
call fcn.0052f11f
mov eax, dword [esp + 0x14]
mov byte [esp + 0xad8], 6
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0x88]
mov byte [esp + 0xadc], 0x13
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0x80]
mov byte [esp + 0xae0], 0x12
push edx
call fcn.005b44c3
mov eax, dword [esp + 0x78]
mov byte [esp + 0xae4], 0x11
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0x70]
mov byte [esp + 0xae8], 0x10
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0x68]
mov byte [esp + 0xaec], bl
push edx
call fcn.005b44c3
add esp, 0x18
jmp 0x44101c
push str.SXmlElem::PickupAttr_error:_No_attribute.
lea ecx, [esp + 0x140]
call fcn.0040bed0
lea eax, [esp + 0x13c]
push 0x5ff2d8
push eax
call fcn.005300db
nop
nop
nop
nop
nop
nop