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

Disassembly:
push 0xffffffffffffffff
push 0x4c90de
mov eax, dword fs:[0]
push eax
sub esp, 0x2d8
mov eax, dword [0x509354]
xor eax, esp
mov dword [esp + 0x2d4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x509354]
xor eax, esp
push eax
lea eax, [esp + 0x2ec]
mov dword fs:[0], eax
xor esi, esi
xor eax, eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x290], 7
mov dword [esp + 0x28c], esi
mov word [esp + 0x27c], ax
lea ecx, [esp + 0x2b0]
push ecx
mov dword [esp + 0x2f8], esi
call fcn.00474330
add esp, 4
mov byte [esp + 0x2f4], 1
cmp dword [esp + 0x2c4], esi
je 0x474542
push 6
push str._ihs_
lea ecx, [esp + 0x280]
call fcn.00401cd6
push 0xffffffffffffffff
push esi
lea edx, [esp + 0x2b8]
push edx
lea ecx, [esp + 0x284]
call fcn.00402744
push 1
push 0x4e8e18
lea ecx, [esp + 0x280]
call fcn.004027ed
mov ecx, 4
mov edx, 0xf0007
mov eax, 0x8000000
mov dword [esp + 0x38], str.Imejp.ConfigrationIO_
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], str.FileView__Satori_PropMgrGlobal_IMJP_
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], str.FileView__Satori_PropMgrGlobal_IME
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], str.SatoriKnlDict_MemoryDictionary_
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], str._IME__CodeDictionarySharedMemory_
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], str.FileView___IMJP
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], str.UD_FileMapping_
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], str._IMJP____UD_FileMapping_
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], str._IMJP___UD_FileMapping_
mov dword [esp + 0xbc], edx
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], str._IMJP____UD_ManagementBlock_
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], str._IMJP___UD_ManagementBlock_
mov dword [esp + 0xdc], edx
mov dword [esp + 0xe0], ecx
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], str.microsoft_imjp
mov dword [esp + 0xec], edx
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf4], eax
lea ebx, [ecx + 4]
cmp dword [esp + 0x28c], esi
jne 0x4746b0
mov dword [esp + 0xf8], esi
jmp 0x4746ce
mov edi, dword [esp + 0x27c]
cmp dword [esp + 0x290], ebx
jae 0x4746c7
lea edi, [esp + 0x27c]
mov dword [esp + 0xf8], edi
mov edi, 6
mov dword [esp + 0x11c], edi
mov dword [esp + 0x12c], edi
mov edi, 0xf001f
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], ecx
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], str.AtlDebugAllocator_FileMappingNameStatic3_
mov dword [esp + 0x10c], edx
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], str.Globalwindows_shell_global_counters
mov dword [esp + 0x120], esi
mov dword [esp + 0x124], esi
mov dword [esp + 0x128], str.windows_ie_global_counters
mov dword [esp + 0x130], esi
mov dword [esp + 0x134], esi
mov dword [esp + 0x138], str.MSCTF.Shared.
mov dword [esp + 0x13c], edi
mov dword [esp + 0x140], esi
mov dword [esp + 0x144], esi
mov dword [esp + 0x148], str.LocalUrlZonesSM_
mov dword [esp + 0x14c], edx
mov dword [esp + 0x150], ecx
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], str.Local_PrivacIE_SharedMem_Counter
mov dword [esp + 0x15c], edx
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], str.MSCTF.MarshalInterface.FileMap.
mov dword [esp + 0x16c], edi
mov dword [esp + 0x170], esi
mov dword [esp + 0x174], esi
mov dword [esp + 0x178], str.CTF.AsmListCache.FMPDefault
mov dword [esp + 0x17c], edi
mov dword [esp + 0x180], esi
mov dword [esp + 0x184], esi
mov dword [esp + 0x188], str.C43FCC54_5B86_4525_B9C3_5C382D06C790
mov dword [esp + 0x18c], edi
mov dword [esp + 0x190], esi
mov dword [esp + 0x194], esi
mov dword [esp + 0x198], str.ASMWIN
mov dword [esp + 0x19c], edi
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], str.LocalEWH
mov dword [esp + 0x1ac], ecx
mov dword [esp + 0x1b0], 2
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], str.A3D_
mov dword [esp + 0x1bc], edi
mov dword [esp + 0x1c0], ecx
mov dword [esp + 0x1c4], eax
mov dword [esp + 0x1c8], str.Imejp.PredictionPropertyCache_
mov dword [esp + 0x1cc], edx
mov dword [esp + 0x1d0], ecx
mov dword [esp + 0x1d4], eax
mov dword [esp + 0x1d8], str.microsoft_ime12_imejp_dicts_
mov dword [esp + 0x1dc], edx
mov dword [esp + 0x1e0], ecx
mov dword [esp + 0x1e4], eax
mov dword [esp + 0x1e8], str.microsoft_imjp12_imjp12
mov dword [esp + 0x1ec], edx
mov dword [esp + 0x1f0], ecx
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x1f8], str.microsoft_imjp12_dicts_imjp
mov dword [esp + 0x1fc], edx
mov dword [esp + 0x200], ecx
mov dword [esp + 0x204], eax
mov dword [esp + 0x208], str.GlobalAcroSharedMemory_
mov dword [esp + 0x20c], edx
mov dword [esp + 0x210], ecx
mov dword [esp + 0x214], eax
mov dword [esp + 0x218], str.SandboxProtectedViewSharedSection_
mov dword [esp + 0x21c], edx
mov dword [esp + 0x220], ecx
mov dword [esp + 0x224], eax
mov dword [esp + 0x228], str.GlobalFntCache_
mov dword [esp + 0x22c], edx
mov dword [esp + 0x230], ecx
mov dword [esp + 0x234], eax
mov dword [esp + 0x244], eax
mov dword [esp + 0x254], eax
mov dword [esp + 0x264], eax
mov dword [esp + 0x274], eax
lea eax, [esp + 0x2cc]
push eax
mov dword [esp + 0x23c], str.dllmemfilemap
mov dword [esp + 0x240], edx
mov dword [esp + 0x244], ecx
mov dword [esp + 0x24c], str.JsMmfAtok
mov dword [esp + 0x250], edx
mov dword [esp + 0x254], ecx
mov dword [esp + 0x25c], str._IMJP__CodeDictionarySharedMemory
mov dword [esp + 0x260], edx
mov dword [esp + 0x264], ecx
mov dword [esp + 0x26c], str.PGPhk
mov dword [esp + 0x270], edx
mov dword [esp + 0x274], ecx
call fcn.00472040
add esp, 4
mov byte [esp + 0x2f4], 2
lea ebp, [esp + 0x38]
mov dword [esp + 0x14], 0x24
mov edx, dword [ebp]
cmp edx, esi
je 0x474ad8
cmp word [edx], si
je 0x474ad8
xor ecx, ecx
mov eax, edx
mov dword [esp + 0x34], 7
mov dword [esp + 0x30], esi
mov word [esp + 0x20], cx
lea edi, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x474a21
sub eax, edi
sar eax, 1
push eax
push edx
lea ecx, [esp + 0x24]
call fcn.00401cd6
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x2d0]
push eax
lea ecx, [esp + 0x29c]
push ecx
mov byte [esp + 0x300], 3
call fcn.00438360
add esp, 0xc
mov byte [esp + 0x2f4], 5
cmp dword [esp + 0x34], ebx
jb 0x474a7b
mov edx, dword [esp + 0x20]
push edx
call fcn.0048e006
add esp, 4
xor eax, eax
mov word [esp + 0x20], ax
mov eax, dword [esp + 0x298]
mov dword [esp + 0x34], 7
mov dword [esp + 0x30], esi
cmp dword [esp + 0x2ac], ebx
jae 0x474aa5
lea eax, [esp + 0x298]
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x2c]
push 0xc
push 6
call eax
mov byte [esp + 0x2f4], 2
cmp dword [esp + 0x2ac], ebx
jb 0x474ad8
mov ecx, dword [esp + 0x298]
push ecx
call fcn.0048e006
add esp, 4
add ebp, 0x10
sub dword [esp + 0x14], 1
jne 0x4749f5
push esi
call fcn.0044fc30
add esp, 4
mov edi, 7
test al, al
je 0x474bc1
xor edx, edx
mov eax, str.MERC_SHARE_MEMORY
mov word [esp + 0x20], dx
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x474b13
sub eax, edx
sar eax, 1
push eax
push str.MERC_SHARE_MEMORY
lea ecx, [esp + 0x24]
call fcn.00401cd6
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x2d0]
push ecx
lea edx, [esp + 0x29c]
push edx
mov byte [esp + 0x300], 6
call fcn.00438360
add esp, 0xc
mov byte [esp + 0x2f4], bl
cmp dword [esp + 0x34], ebx
jb 0x474b70
mov eax, dword [esp + 0x20]
push eax
call fcn.0048e006
add esp, 4
mov eax, dword [esp + 0x298]
xor ecx, ecx
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], esi
mov word [esp + 0x20], cx
cmp dword [esp + 0x2ac], ebx
jae 0x474b96
lea eax, [esp + 0x298]
mov edx, dword [esp + 0x18]
mov ecx, dword [edx]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x2c]
push 0xc
push 6
call eax
cmp dword [esp + 0x2ac], ebx
jb 0x474bc1
mov ecx, dword [esp + 0x298]
push ecx
call fcn.0048e006
add esp, 4
cmp dword [esp + 0x2e4], ebx
jb 0x474bda
mov edx, dword [esp + 0x2d0]
push edx
call fcn.0048e006
add esp, 4
xor eax, eax
mov dword [esp + 0x2e4], edi
mov dword [esp + 0x2e0], esi
mov word [esp + 0x2d0], ax
cmp dword [esp + 0x2c8], ebx
jb 0x474c0b
mov ecx, dword [esp + 0x2b4]
push ecx
call fcn.0048e006
add esp, 4
xor edx, edx
mov dword [esp + 0x2c8], edi
mov dword [esp + 0x2c4], esi
mov word [esp + 0x2b4], dx
cmp dword [esp + 0x290], ebx
jb 0x474c3c
mov eax, dword [esp + 0x27c]
push eax
call fcn.0048e006
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x2ec]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2d4]
xor ecx, esp
call fcn.0048e25d
add esp, 0x2e4
ret