Function at 0x100d0e80
Capabilities:
Check mutex on windows
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x1018babb
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x101cd7b4]
xor eax, esp
mov dword [esp + 0x28], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101cd7b4]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x28], esi
mov dword [esi], 0x1019b2e0
lea edi, [esi + 4]
xor ebx, ebx
mov ecx, edi
mov dword [esp + 0x48], ebx
call fcn.10028800
mov dword [esi + 8], 0x1019b3c8
mov dword [esi + 0xc], 0x1019b478
mov dword [esi + 0x10], 0x1019ab20
mov dword [esi + 0x14], 0x1019b47c
mov dword [esi + 0x18], 0x1019b4a0
mov dword [edi], 0x1019b9b0
lea edi, [esi + 0x1c]
mov ecx, edi
mov byte [esp + 0x48], 1
mov dword [esi], 0x1019ba70
mov dword [esi + 8], 0x1019b900
mov dword [esi + 0xc], 0x1019b8f8
mov dword [esi + 0x10], 0x1019b8f4
mov dword [esi + 0x14], 0x1019b8d0
mov dword [esi + 0x18], 0x1019b8cc
call fcn.100a74b0
mov dword [edi + 4], eax
mov byte [eax + 0x15], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
lea edi, [esi + 0x28]
mov ecx, edi
mov byte [esp + 0x48], 2
call fcn.100a74b0
mov dword [edi + 4], eax
mov byte [eax + 0x15], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
lea edi, [esi + 0x34]
mov ecx, edi
mov byte [esp + 0x48], 3
call fcn.100a74b0
mov dword [edi + 4], eax
mov byte [eax + 0x15], 1
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov dword [edi + 8], ebx
mov dword [esi + 0x40], 0x1019b4d4
mov edi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea eax, [esi + 0x48]
push eax
mov dword [esi + 0x44], 0x10199604
call edi
lea ebp, [esi + 0x60]
mov ecx, ebp
mov byte [esp + 0x48], 6
call fcn.100a72f0
mov dword [ebp + 4], eax
mov byte [eax + 0x1a9], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
push 0xb68
lea ebp, [esi + 0x78]
push ebx
push ebp
mov byte [esp + 0x54], 7
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ebx
mov dword [esi + 0x74], ebx
call fcn.101596b0
mov eax, 0x10
push 0xb68
mov dword [ebp + 6], 0xa
mov dword [ebp + 0xa], 0x7d0
mov dword [ebp + 0xe], 4
mov dword [ebp + 0xb60], eax
mov dword [ebp + 0xb5c], eax
mov byte [ebp + 0xb67], bl
mov dword [ebp + 0x16], 0x1000
lea ebp, [esi + 0xbe0]
push ebx
push ebp
call fcn.101596b0
mov eax, 0x10
push 0x114a
mov dword [ebp + 6], 0xa
mov dword [ebp + 0xa], 0x7d0
mov dword [ebp + 0xe], 4
mov dword [ebp + 0xb60], eax
mov dword [ebp + 0xb5c], eax
mov byte [ebp + 0xb67], bl
mov dword [ebp + 0x16], 0x1000
lea ebp, [esi + 0x1748]
push ebx
push ebp
call fcn.101596b0
push 0x114a
mov dword [ebp], ebx
lea ebp, [esi + 0x2892]
push ebx
push ebp
call fcn.101596b0
push 0x34
mov dword [ebp], ebx
lea ebp, [esi + 0x39dc]
push ebx
push ebp
call fcn.101596b0
push 0x114a
mov dword [ebp], 0xa
mov dword [ebp + 4], 0x4e20
mov dword [ebp + 8], 5
mov dword [ebp + 0xc], 0x1e
mov byte [ebp + 0x10], bl
mov byte [ebp + 0x11], bl
mov byte [ebp + 0x12], bl
lea ebp, [esi + 0x3a10]
push ebx
push ebp
call fcn.101596b0
add esp, 0x48
push ebx
mov dword [ebp], ebx
push ebx
lea ecx, [esi + 0x4b60]
mov dword [esi + 0x4b5c], 0x80000000
call fcn.10057b30
push ebx
push ebx
lea ecx, [esi + 0x4ba8]
mov byte [esp + 0x50], 8
call fcn.10057b30
push ebx
mov byte [esp + 0x4c], 9
push ebx
lea ecx, [esi + 0x4bf0]
call fcn.10057b30
lea ecx, [esi + 0x4c38]
mov byte [esp + 0x48], 0xa
call fcn.100dd0f0
push ebx
push ebx
lea ecx, [esi + 0x4c68]
mov byte [esp + 0x50], 0xb
call fcn.100d6db0
mov dword [esi + 0x4ca8], ebx
mov dword [esi + 0x4cac], ebx
mov dword [esi + 0x4cb0], ebx
mov cl, byte [esi + 0x4cb8]
mov dword [esi + 0x4cb4], ebx
and cl, 0xf1
mov byte [esi + 0x4cb9], bl
mov dword [esi + 0x4cba], ebx
mov word [esi + 0x4cbe], bx
mov dword [esi + 0x4cc0], ebx
mov word [esi + 0x4cc4], bx
mov dword [esi + 0x4cc6], ebx
mov word [esi + 0x4cca], bx
or cl, 0x11
mov byte [esi + 0x4cb8], cl
mov byte [esi + 0x4ccc], bl
mov dword [esi + 0x4ccd], ebx
mov word [esi + 0x4cd1], bx
mov byte [esi + 0x4cd3], bl
lea ecx, [esi + 0x4cf0]
mov byte [esp + 0x48], 0xd
mov dword [esi + 0x4ce4], 0x1019bbd4
mov dword [esi + 0x4ce8], ebx
call fcn.100b19a0
lea ecx, [esi + 0x4d38]
mov byte [esp + 0x48], 0xe
mov dword [esi + 0x4d34], ebx
call fcn.100b55d0
push str._p2pdownload_baidu_dr
push ebx
push ebx
mov dword [esi + 0x4d64], 0x1019a1a0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
cmp eax, ebx
mov dword [esi + 0x4d68], eax
jne 0x100d1233
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x100d1233
push str._p2pdownload_baidu_dr
push ebx
push 1
call dword [sym.imp.KERNEL32.dll_OpenMutexA]
mov dword [esi + 0x4d68], eax
lea ecx, [esi + 0x4d6c]
mov byte [esp + 0x48], 0x10
call fcn.1002e360
lea ecx, [esi + 0x4d98]
push 0x12
mov ebp, 0xf
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.fs_bt.iyuntian.com
mov byte [esp + 0x50], 0x11
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4dbc]
mov dword [esi + 0x4db4], ebx
mov word [esi + 0x4db8], bx
push 0x12
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.fs_rc.iyuntian.com
mov byte [esp + 0x50], 0x12
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4de0]
mov dword [esi + 0x4dd8], ebx
mov word [esi + 0x4ddc], bx
push 0x1a
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.dtrp.download.iyuntian.com
mov byte [esp + 0x50], 0x13
mov byte [ecx + 4], bl
call fcn.10005610
mov dword [esi + 0x4dfc], ebx
mov word [esi + 0x4e00], bx
mov dword [esi + 0x4e08], ebx
mov dword [esi + 0x4e0c], ebx
mov dword [esi + 0x4e10], ebx
lea ecx, [esi + 0x4e1c]
mov dword [esi + 0x4e14], ebx
mov word [esi + 0x4e18], bx
push 0x17
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.xf_bt.stat.iyuntian.com
mov byte [esp + 0x50], 0x15
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4e40]
mov dword [esi + 0x4e38], ebx
mov word [esi + 0x4e3c], bx
push 0x17
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.xf_em.stat.iyuntian.com
mov byte [esp + 0x50], 0x16
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4e64]
mov dword [esi + 0x4e5c], ebx
mov word [esi + 0x4e60], bx
push 0x18
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.sn.download.iyuntian.com
mov byte [esp + 0x50], 0x17
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4e88]
mov dword [esi + 0x4e80], ebx
mov word [esi + 0x4e84], bx
mov byte [esp + 0x48], 0x18
mov dword [ecx + 0x18], ebp
push 0x1a
mov dword [ecx + 0x14], ebx
push str.res2.download.iyuntian.com
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4ea4]
push 0x1a
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.res3.download.iyuntian.com
mov byte [esp + 0x50], 0x19
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4ec0]
push 0x19
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.cfg.download.iyuntian.com
mov byte [esp + 0x50], 0x1a
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4ee4]
mov dword [esi + 0x4edc], ebx
mov word [esi + 0x4ee0], bx
push 0x18
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.jp.download.iyuntian.com
mov byte [esp + 0x50], 0x1b
mov byte [ecx + 4], bl
call fcn.10005610
lea ecx, [esi + 0x4f08]
mov dword [esi + 0x4f00], ebx
mov word [esi + 0x4f04], bx
push 0x19
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.qr.download.iyuntian.com
mov byte [esp + 0x50], 0x1c
mov byte [ecx + 4], bl
call fcn.10005610
mov dword [esi + 0x4f24], ebx
mov word [esi + 0x4f28], bx
mov dword [esi + 0x4f2c], ebx
mov byte [esi + 0x4f30], bl
mov dword [esi + 0x4f31], ebx
mov word [esi + 0x4f35], bx
mov dword [esi + 0x4f37], ebx
mov word [esi + 0x4f3b], bx
lea ecx, [esi + 0x4f54]
mov byte [esp + 0x48], 0x1d
mov byte [esi + 0x4f3d], bl
mov dword [esi + 0x4f40], ebx
mov dword [esi + 0x4f44], ebx
mov dword [esi + 0x4f48], ebx
mov dword [esi + 0x4f4c], ebx
mov dword [esi + 0x4f50], ebx
call fcn.100a7330
mov dword [esi + 0x4f58], eax
mov byte [eax + 0xf9], 1
mov eax, dword [esi + 0x4f58]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x4f58]
mov dword [eax], eax
mov eax, dword [esi + 0x4f58]
mov dword [eax + 8], eax
mov dword [esi + 0x4f5c], ebx
lea edx, [esi + 0x4f64]
push edx
mov dword [esi + 0x4f60], 0x10199604
call edi
mov eax, 0x100bf580
mov ecx, ebx
mov byte [esi + 0x4f80], 1
mov edx, dword [esp + 0x1c]
mov byte [esi + 0x4f81], bl
mov dword [esi + 0x4f88], ebx
mov dword [esi + 0x4f8c], ebx
mov dword [esi + 0x4f90], ebx
mov dword [esi + 0x4f98], esi
mov dword [esi + 0x4f9c], edx
mov dword [esi + 0x4fa0], eax
lea eax, [esi + 0x4fac]
mov dword [esi + 0x4fa4], ecx
push eax
mov dword [esi + 0x4fa8], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov byte [esi + 0x4fc8], 1
mov byte [esi + 0x4fc9], bl
mov dword [esi + 0x4fd0], ebx
mov dword [esi + 0x4fd4], ebx
mov dword [esi + 0x4fd8], ebx
mov dword [esi + 0x4fe0], esi
mov dword [esi + 0x4fe4], edx
mov eax, 0x100b2ba0
mov dword [esi + 0x4fe8], eax
mov ecx, ebx
lea eax, [esi + 0x4ff4]
mov dword [esi + 0x4fec], ecx
push eax
mov dword [esi + 0x4ff0], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov byte [esi + 0x5010], 1
mov byte [esi + 0x5011], bl
mov dword [esi + 0x5018], ebx
mov dword [esi + 0x501c], ebx
mov dword [esi + 0x5020], ebx
mov dword [esi + 0x5028], esi
mov dword [esi + 0x502c], edx
mov eax, 0x100b2c10
mov dword [esi + 0x5030], eax
mov ecx, ebx
lea eax, [esi + 0x503c]
mov dword [esi + 0x5034], ecx
push eax
mov dword [esi + 0x5038], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov byte [esi + 0x5058], 1
mov byte [esi + 0x5059], bl
mov dword [esi + 0x5060], ebx
mov dword [esi + 0x5064], ebx
mov dword [esi + 0x5068], ebx
mov dword [esi + 0x5070], esi
mov dword [esi + 0x5074], edx
mov eax, 0x100bb890
mov dword [esi + 0x5078], eax
mov ecx, ebx
lea eax, [esi + 0x5084]
mov dword [esi + 0x507c], ecx
push eax
mov dword [esi + 0x5080], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov dword [esi + 0x50a0], ebx
mov byte [esi + 0x50a8], 1
mov byte [esi + 0x50a9], bl
mov dword [esi + 0x50b0], ebx
mov dword [esi + 0x50b4], ebx
mov dword [esi + 0x50b8], ebx
mov dword [esi + 0x50c0], esi
mov eax, 0x100aadf0
mov dword [esi + 0x50c4], edx
mov dword [esi + 0x50c8], eax
mov ecx, ebx
lea eax, [esi + 0x50d4]
mov dword [esi + 0x50cc], ecx
mov dword [esi + 0x50d0], 0x10199604
push eax
call edi
mov edx, dword [esp + 0x1c]
mov dword [esi + 0x50f0], ebx
mov byte [esi + 0x50f8], 1
mov byte [esi + 0x50f9], bl
mov dword [esi + 0x5100], ebx
mov dword [esi + 0x5104], ebx
mov dword [esi + 0x5108], ebx
mov dword [esi + 0x5110], esi
mov dword [esi + 0x5114], edx
mov eax, 0x100ab030
mov dword [esi + 0x5118], eax
mov ecx, ebx
lea eax, [esi + 0x5124]
mov dword [esi + 0x511c], ecx
push eax
mov dword [esi + 0x5120], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov dword [esi + 0x5140], ebx
mov byte [esi + 0x5148], 1
mov byte [esi + 0x5149], bl
mov dword [esi + 0x5150], ebx
mov dword [esi + 0x5154], ebx
mov dword [esi + 0x5158], ebx
mov dword [esi + 0x5160], esi
mov dword [esi + 0x5164], edx
mov eax, 0x100ab270
mov dword [esi + 0x5168], eax
mov ecx, ebx
lea eax, [esi + 0x5174]
mov dword [esi + 0x516c], ecx
push eax
mov dword [esi + 0x5170], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov dword [esi + 0x5190], ebx
mov byte [esi + 0x5198], 1
mov byte [esi + 0x5199], bl
mov dword [esi + 0x51a0], ebx
mov dword [esi + 0x51a4], ebx
mov dword [esi + 0x51a8], ebx
mov dword [esi + 0x51b0], esi
mov dword [esi + 0x51b4], edx
mov eax, 0x100ad520
mov dword [esi + 0x51b8], eax
mov ecx, ebx
lea eax, [esi + 0x51c4]
mov dword [esi + 0x51bc], ecx
push eax
mov dword [esi + 0x51c0], 0x10199604
call edi
mov edx, dword [esp + 0x1c]
mov dword [esi + 0x51e0], ebx
mov byte [esi + 0x51e8], 1
mov byte [esi + 0x51e9], bl
mov dword [esi + 0x51f0], ebx
mov dword [esi + 0x51f4], ebx
mov dword [esi + 0x51f8], ebx
mov dword [esi + 0x5200], esi
mov dword [esi + 0x5204], edx
mov eax, 0x100ad770
mov dword [esi + 0x5208], eax
mov ecx, ebx
lea eax, [esi + 0x5214]
mov dword [esi + 0x520c], ecx
push eax
mov dword [esi + 0x5210], 0x10199604
call edi
lea ecx, [esi + 0x5234]
mov byte [esp + 0x48], 0x28
mov dword [esi + 0x5230], ebx
call fcn.100a3e10
mov byte [esp + 0x48], 0x29
lea eax, [esi + 0x5234]
push eax
lea ecx, [esi + 0x5260]
call fcn.1002d710
lea ecx, [esi + 0x52f8]
mov byte [esp + 0x48], 0x2a
call fcn.100dddc0
lea ecx, [esi + 0x52fc]
mov byte [esp + 0x48], 0x2b
call fcn.10061610
mov dword [esi + 0x5300], eax
mov byte [eax + 0x39], 1
mov eax, dword [esi + 0x5300]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x5300]
mov dword [eax], eax
mov eax, dword [esi + 0x5300]
mov dword [eax + 8], eax
mov dword [esi + 0x5304], ebx
lea ecx, [esi + 0x530c]
push ecx
mov dword [esi + 0x5308], 0x10199604
call edi
lea edx, [esi + 0x532c]
mov dword [esi + 0x5324], ebx
push edx
mov dword [esi + 0x5328], 0x10199604
call edi
lea ecx, [esi + 0x5344]
mov byte [esp + 0x48], 0x2e
call fcn.100b55d0
mov dword [esi + 0x5374], ebx
mov dword [esi + 0x5378], ebx
mov dword [esi + 0x537c], ebx
lea ecx, [esi + 0x5380]
mov byte [esp + 0x48], 0x30
call fcn.10082a70
mov dword [esi + 0x53b4], ebx
mov dword [esi + 0x53b8], ebx
mov dword [esi + 0x53bc], ebx
lea ecx, [esi + 0x53c0]
push 0x13
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.xfstat.iyuntian.com
mov byte [esp + 0x50], 0x32
mov byte [ecx + 4], bl
call fcn.10005610
mov dword [esi + 0x53dc], ebx
mov word [esi + 0x53e0], bx
lea ecx, [esi + 0x53e8]
mov byte [esp + 0x48], 0x33
mov dword [esi + 0x53e4], ebx
call fcn.100da590
lea eax, [esi + 0x542c]
push eax
mov dword [esi + 0x5428], 0x10199604
call edi
mov dword [esi + 0x5448], ebx
mov dword [esi + 0x544c], ebx
mov dword [esi + 0x5450], ebx
lea ecx, [esi + 0x5458]
push ecx
mov dword [esi + 0x5454], 0x10199604
call edi
mov dword [esi + 0x5474], ebx
mov dword [esi + 0x5478], ebx
mov dword [esi + 0x547c], ebx
mov byte [esi + 0x5480], 0x64
mov dword [esi + 0x5481], ebx
mov dword [esi + 0x5485], ebx
mov dword [esi + 0x5489], ebx
mov dword [esi + 0x548d], ebx
mov dword [esi + 0x5491], ebx
mov dword [esi + 0x5495], ebx
lea ecx, [esi + 0x549c]
mov byte [esi + 0x5499], bl
push 0x15
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.fs_emule.iyuntian.com
mov byte [esp + 0x50], 0x38
mov byte [ecx + 4], bl
call fcn.10005610
lea edx, [esi + 0x54c4]
mov dword [esi + 0x54b8], ebx
mov word [esi + 0x54bc], bx
push edx
mov dword [esi + 0x54c0], 0x10199604
call edi
lea ecx, [esi + 0x54dc]
mov byte [esp + 0x48], 0x3a
call fcn.100a7370
mov dword [esi + 0x54e0], eax
mov byte [eax + 0x2a1], 1
mov eax, dword [esi + 0x54e0]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x54e0]
mov dword [eax], eax
mov eax, dword [esi + 0x54e0]
mov dword [eax + 8], eax
mov dword [esi + 0x54e4], ebx
lea ecx, [esi + 0x54e8]
mov byte [esp + 0x48], 0x3b
call fcn.100a73b0
mov dword [esi + 0x54ec], eax
mov byte [eax + 0x3d], 1
mov eax, dword [esi + 0x54ec]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x54ec]
mov dword [eax], eax
mov eax, dword [esi + 0x54ec]
mov dword [eax + 8], eax
mov dword [esi + 0x54f0], ebx
lea ecx, [esi + 0x54f4]
mov byte [esp + 0x48], 0x3c
call fcn.100a73f0
mov dword [esi + 0x54f8], eax
mov byte [eax + 0x165], 1
mov eax, dword [esi + 0x54f8]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x54f8]
mov dword [eax], eax
mov eax, dword [esi + 0x54f8]
mov dword [eax + 8], eax
mov dword [esi + 0x54fc], ebx
lea ecx, [esi + 0x5508]
mov byte [esp + 0x48], 0x3d
mov byte [esi + 0x5500], bl
mov byte [esi + 0x5501], 0xf
mov byte [esi + 0x5502], bl
mov byte [esi + 0x5503], 0x40
mov byte [esi + 0x5504], 1
call fcn.10041810
lea ecx, [esi + 0x553c]
mov byte [esp + 0x48], 0x3e
mov dword [esi + 0x5534], ebx
mov dword [esi + 0x5538], ebx
call fcn.100a7430
mov dword [esi + 0x5540], eax
mov byte [eax + 0x2d], 1
mov eax, dword [esi + 0x5540]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x5540]
mov dword [eax], eax
mov eax, dword [esi + 0x5540]
mov dword [eax + 8], eax
mov dword [esi + 0x5544], ebx
lea ecx, [esi + 0x5550]
mov byte [esp + 0x48], 0x3f
mov dword [esi + 0x5548], ebx
call fcn.100fc414
lea ecx, [esi + 0x5578]
mov byte [esp + 0x48], 0x40
call fcn.100defd0
mov dword [esi + 0x56a8], ebx
mov dword [esi + 0x56ac], ebx
mov dword [esi + 0x56b0], ebx
lea ecx, [esi + 0x56bc]
mov byte [esp + 0x48], 0x41
mov dword [esi + 0x56b4], ebx
mov dword [esi + 0x56b8], ebx
call fcn.1013e73c
push 0xa
lea ecx, [esi + 0x56f8]
mov byte [esp + 0x4c], 0x42
mov dword [esi + 0x56f0], ebx
mov word [esi + 0x56f4], bx
call fcn.100f86ec
push 0xa
lea ecx, [esi + 0x5760]
mov byte [esp + 0x4c], 0x43
call fcn.100f86ec
mov dword [esi + 0x57c8], ebx
mov word [esi + 0x57cc], bx
lea ecx, [esi + 0x57d4]
mov byte [esp + 0x48], 0x44
mov dword [esi + 0x57d0], ebx
call fcn.100a7470
mov dword [esi + 0x57d8], eax
mov byte [eax + 0x51], 1
mov eax, dword [esi + 0x57d8]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x57d8]
mov dword [eax], eax
mov eax, dword [esi + 0x57d8]
mov dword [eax + 8], eax
mov dword [esi + 0x57dc], ebx
lea ecx, [esi + 0x57f4]
mov byte [esp + 0x48], 0x45
mov dword [esi + 0x57e0], ebx
mov dword [esi + 0x57e4], ebx
mov dword [esi + 0x57e8], ebx
mov dword [esi + 0x57ec], ebx
call fcn.10044b20
mov dword [esi + 0x57f8], eax
mov byte [eax + 0x21], 1
mov eax, dword [esi + 0x57f8]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x57f8]
mov dword [eax], eax
mov eax, dword [esi + 0x57f8]
mov dword [eax + 8], eax
mov dword [esi + 0x57fc], ebx
mov byte [esi + 0x5800], bl
mov byte [esi + 0x5801], bl
mov byte [esi + 0x5802], bl
mov dword [esi + 0x5808], 1
mov dword [esi + 0x5810], ebx
mov dword [esi + 0x5814], ebx
mov dword [esi + 0x5818], ebx
mov dword [esi + 0x5820], ebx
mov dword [esi + 0x5824], ebx
mov dword [esi + 0x5828], ebx
mov dword [esi + 0x5830], ebx
mov dword [esi + 0x5834], ebx
mov dword [esi + 0x5838], ebx
lea ecx, [esi + 0x5848]
mov byte [esp + 0x48], 0x49
mov dword [esi + 0x583c], ebx
mov dword [esi + 0x5840], ebx
mov byte [esi + 0x5844], bl
call fcn.1002a170
mov dword [esi + 0x584c], eax
mov byte [eax + 0x45], 1
mov eax, dword [esi + 0x584c]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x584c]
mov dword [eax], eax
mov eax, dword [esi + 0x584c]
mov dword [eax + 8], eax
mov dword [esi + 0x5850], ebx
mov dword [esi + 0x5854], ebx
lea ecx, [esi + 0x5860]
mov byte [esp + 0x48], 0x4a
mov byte [esi + 0x5858], bl
mov byte [esi + 0x5859], 1
mov dword [esi + 0x585c], ebx
call fcn.10044b20
mov dword [esi + 0x5864], eax
mov byte [eax + 0x21], 1
mov eax, dword [esi + 0x5864]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x5864]
mov dword [eax], eax
mov eax, dword [esi + 0x5864]
mov dword [eax + 8], eax
mov dword [esi + 0x5868], ebx
mov dword [esi + 0x5884], ebp
mov dword [esi + 0x5880], ebx
mov byte [esi + 0x5870], bl
mov dword [esi + 0x58a0], ebp
mov dword [esi + 0x589c], ebx
mov byte [esi + 0x588c], bl
mov dword [esi + 0x58bc], ebp
mov dword [esi + 0x58b8], ebx
mov byte [esi + 0x58a8], bl
mov dword [esi + 0x58d8], ebp
mov dword [esi + 0x58d4], ebx
mov byte [esi + 0x58c4], bl
lea ebp, [esi + 0x58dc]
mov ecx, ebp
mov byte [esp + 0x48], 0x4f
call fcn.100a74b0
mov dword [ebp + 4], eax
mov byte [eax + 0x15], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
mov dword [esi + 0x58ec], ebx
mov dword [esi + 0x58f0], ebx
mov dword [esi + 0x58f4], ebx
lea ebp, [esi + 0x58f8]
mov ecx, ebp
mov byte [esp + 0x48], 0x51
call fcn.100044d0
mov dword [ebp + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ebp, [esi + 0x5904]
mov ecx, ebp
mov byte [esp + 0x48], 0x52
call fcn.1005a840
mov dword [ebp + 4], eax
mov byte [eax + 0x6d], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ebp, [esi + 0x5910]
mov ecx, ebp
mov byte [esp + 0x48], 0x53
call fcn.100044d0
mov dword [ebp + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ebp, [esi + 0x591c]
mov ecx, ebp
mov byte [esp + 0x48], 0x54
call fcn.100044d0
mov dword [ebp + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ebp, [esi + 0x5928]
mov ecx, ebp
mov byte [esp + 0x48], 0x55
call fcn.100044d0
mov dword [ebp + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ebp, [esi + 0x5934]
mov ecx, ebp
mov byte [esp + 0x48], 0x56
call fcn.10044b60
mov dword [ebp + 4], eax
mov byte [eax + 0x25], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ecx, [esi + 0x5940]
mov byte [esp + 0x48], 0x57
call fcn.10002290
mov byte [esi + 0x599c], bl
mov byte [esi + 0x599d], bl
mov dword [esi + 0x59a0], ebx
lea ebp, [esi + 0x59a8]
mov ecx, ebp
mov dword [esi + 0x59a4], ebx
call fcn.100044d0
mov dword [ebp + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea ebp, [esi + 0x59cc]
mov ecx, ebp
mov byte [esp + 0x48], 0x58
mov dword [esi + 0x59b4], ebx
mov dword [esi + 0x59b8], ebx
mov byte [esi + 0x59bc], 1
call fcn.100044d0
mov dword [ebp + 4], eax
mov byte [eax + 0x11], 1
mov eax, dword [ebp + 4]
mov dword [eax + 4], eax
mov eax, dword [ebp + 4]
mov dword [eax], eax
mov eax, dword [ebp + 4]
mov dword [eax + 8], eax
mov dword [ebp + 8], ebx
lea eax, [esi + 0x59dc]
push eax
mov dword [esi + 0x59d8], 0x10199604
call edi
mov dword [esi + 0x5a04], ebx
mov dword [esi + 0x5a08], ebx
mov dword [esi + 0x5a0c], ebx
mov dword [esi + 0x5a10], ebx
mov byte [esi + 0x5a14], bl
mov dword [esi + 0x5a18], ebx
mov dword [esi + 0x5a1c], ebx
mov dword [esi + 0x5a20], ebx
push 0x30
mov byte [esp + 0x4c], 0x5b
mov dword [esi + 0x5a24], ebx
call fcn.1015989d
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x48], 0x5c
je 0x100d1faa
push esi
mov ecx, eax
call fcn.10021a20
jmp 0x100d1fac
xor eax, eax
lea ecx, [esp + 0x2c]
mov dword [esi + 0x4ca0], eax
mov dword [esi + 0x4cec], ebx
mov dword [esi + 0x4cd4], ebx
mov dword [esi + 0x4cd8], ebx
mov dword [esi + 0x4cdc], ebx
mov dword [esi + 0x4ce0], ebx
mov byte [esi + 0x59c4], bl
mov dword [esi + 0x59c0], 0x41816925
mov dword [esi + 0x59fc], ebx
mov dword [esi + 0x59f8], ebx
push ecx
mov byte [esp + 0x4c], 0x5b
mov dword [esi + 0x59f4], ebx
call fcn.100e9196
add esp, 4
test al, al
je 0x100d2043
mov edx, dword [esp + 0x14]
push edx
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x24]
call fcn.1000abd0
lea edx, [esp + 0x18]
push edx
lea ecx, [esi + 0x53b0]
mov byte [esp + 0x4c], 0x5d
call fcn.1000af80
lea ecx, [esp + 0x18]
mov byte [esp + 0x48], 0x5b
call fcn.10004a10
mov dword [0x101cef0c], 0xffffffff
call fcn.1013f961
call fcn.1013e6c5
push 0x74
call fcn.1015989d
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x48], 0x5e
je 0x100d207e
push esi
mov ecx, eax
call fcn.100dbae0
mov dword [esi + 0x5a18], eax
jmp 0x100d2084
mov dword [esi + 0x5a18], ebx
mov eax, esi
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.10159cce
add esp, 0x38
ret