Function at 0x41f3f0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x50999c
mov eax, dword fs:[0]
push eax
mov eax, 0x1238
call fcn.004d14d0
mov eax, dword [0x5375a0]
xor eax, esp
mov dword [esp + 0x1230], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5375a0]
xor eax, esp
push eax
lea eax, [esp + 0x124c]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x125c]
mov esi, ecx
lea edi, [esp + 0x454]
mov dword [esp + 0xe0], ebp
mov dword [esp + 0x24], esi
call fcn.004023d0
xor ebx, ebx
mov dword [esp + 0x1254], ebx
call fcn.0040a280
call fcn.0040f500
lea eax, [esp + 0x458]
cmp byte [esp + 0x566], bl
jne 0x41f479
mov eax, dword [esp + 0x560]
add eax, 4
push eax
lea ecx, [esp + 0x570]
call fcn.00438c10
push 0x51924c
push 0x5192f4
lea edx, [esp + 0x574]
call fcn.004392f0
push str.ComponentsPicfaceTipListIniSGPicFaceQQJson.json
push 0x5192f4
lea edx, [esp + 0x57c]
call fcn.004392f0
add esp, 0x10
mov byte [esp + 0x3c], 0
mov dword [esp + 0x40], ebx
mov byte [esp + 0x1254], 2
cmp byte [esp + 0x688], 0
lea eax, [esp + 0x578]
jne 0x41f4e1
mov eax, dword [esp + 0x574]
lea ecx, [eax + 4]
lea eax, [esp + 0x3c]
push eax
call fcn.004811a0
test al, al
jne 0x41f58f
mov ecx, dword [esp + 0x24]
call fcn.00437ec0
push 0x51cd78
push 0x5192f4
mov edx, eax
call fcn.004392f0
mov byte [esp + 0x125c], 1
mov esi, dword [esp + 0x48]
add esp, 8
cmp esi, ebx
je 0x41f533
mov ecx, esi
call fcn.004c2060
push esi
call fcn.004c85c5
add esp, 4
mov dword [esp + 0x56c], vtable.t_str.0
cmp byte [esp + 0x688], 0
jne 0x41f563
mov eax, dword [esp + 0x574]
lea ecx, [esp + 0x578]
cmp eax, ecx
je 0x41f563
push eax
call fcn.004c6103
add esp, 4
cmp byte [esp + 0x566], 0
jne 0x41f588
mov eax, dword [esp + 0x560]
lea edx, [esp + 0x458]
cmp eax, edx
je 0x41f588
push eax
call fcn.004c6103
add esp, 4
xor al, al
jmp 0x4212ea
mov edi, dword [esp + 0x40]
cmp edi, ebx
jne 0x41f5b9
mov ecx, dword [esp + 0x24]
call fcn.00437ec0
push 0x51cd78
push 0x5192f4
mov edx, eax
call fcn.004392f0
add esp, 8
jmp 0x41f533
push str.is_lost
mov ecx, edi
mov dword [esp + 0x24], ebx
call fcn.004c2950
push eax
lea ecx, [esp + 0x128]
call fcn.004c1dc0
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x128]
mov byte [esp + 0x1258], 3
call fcn.00481620
add esp, 4
lea ecx, [esp + 0xa0c]
call fcn.00438ae0
push 0x51cd98
mov ecx, edi
mov byte [esp + 0x1258], 4
call fcn.004c2950
push eax
lea ecx, [esp + 0x138]
call fcn.004c1dc0
lea edx, [esp + 0xa0c]
lea ecx, [esp + 0x134]
mov byte [esp + 0x1254], 5
call fcn.00481570
push 0x51cd9c
mov ecx, edi
call fcn.004c2950
push eax
lea ecx, [esp + 0x118]
call fcn.004c1dc0
lea ecx, [esp + 0x30]
push ecx
lea ecx, [esp + 0x118]
mov byte [esp + 0x1258], 6
call fcn.00481620
add esp, 4
cmp dword [esp + 0x20], ebx
je 0x41f744
push ebp
call fcn.0041f300
cmp byte [esp + 0xb28], 0
lea esi, [esp + 0xa18]
jne 0x41f697
mov esi, dword [esp + 0xa14]
mov ecx, dword [esp + 0x24]
call fcn.00437ec0
add esi, 4
push esi
push 0x5192f4
mov edx, eax
call fcn.004392f0
add esp, 8
lea ecx, [esp + 0x114]
mov byte [esp + 0x1254], 5
call fcn.004c2060
lea ecx, [esp + 0x134]
mov byte [esp + 0x1254], 4
call fcn.004c2060
cmp byte [esp + 0xb28], 0
mov esi, vtable.t_str.0
mov dword [esp + 0xa0c], esi
jne 0x41f70c
mov eax, dword [esp + 0xa14]
lea edx, [esp + 0xa18]
cmp eax, edx
je 0x41f70c
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x124]
mov byte [esp + 0x1254], 2
call fcn.004c2060
mov ecx, edi
mov byte [esp + 0x1254], 1
call fcn.004c2060
push edi
call fcn.004c85c5
add esp, 4
mov dword [esp + 0x56c], esi
jmp 0x41f53e
lea ecx, [esp + 0xecc]
call fcn.00438ae0
push str.openid
mov ecx, edi
mov byte [esp + 0x1258], 7
call fcn.004c2950
push eax
lea ecx, [esp + 0x178]
call fcn.004c1dc0
lea edx, [esp + 0xecc]
lea ecx, [esp + 0x174]
mov byte [esp + 0x1254], 8
call fcn.00481570
push str.crdata
mov ecx, edi
call fcn.004c2950
push eax
lea ecx, [esp + 0x168]
call fcn.004c1dc0
lea ecx, [esp + 0x164]
mov byte [esp + 0x1254], 9
call fcn.004c2290
cmp eax, 6
je 0x41f7cc
mov ecx, dword [esp + 0x24]
call fcn.00437f10
jmp 0x41fe0c
push str.crdata
mov ecx, edi
call fcn.004c2950
mov ecx, eax
call fcn.004c26b0
mov dword [esp + 0x20], eax
cmp eax, ebx
je 0x41fe0c
push ebx
push ebx
push ebx
push str.HistroyCellList.ini
push str.ComponentsPicfaceTipListIni
lea eax, [esp + 0x468]
call fcn.00401500
push eax
lea ecx, [esp + 0x8fc]
call fcn.00435960
xor ebp, ebp
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebp
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], fcn.004c61e0
mov dword [esp + 0xa4], fcn.004c83aa
mov dword [esp + 0xa8], fcn.004c6103
lea esi, [esp + 0xb34]
mov byte [esp + 0x1254], 0xb
call fcn.0042dfd0
lea ecx, [esp + 0x8e4]
mov byte [esp + 0x1254], 0xc
call fcn.00436140
test al, al
je 0x41f93e
mov eax, dword [esp + 0x24]
push eax
lea ecx, [esp + 0x8e8]
mov ebx, esi
call fcn.0042e040
test al, al
jne 0x41f8a8
lea ecx, [esp + 0x8e4]
call fcn.00436570
jmp 0x41f93e
xor edi, edi
cmp dword [esp + 0xb50], edi
jle 0x41f93e
mov bl, 0xd
lea esp, [esp]
lea ecx, [esp + 0xda4]
call fcn.00438ae0
mov eax, edi
lea edx, [esp + 0xda4]
lea ecx, [esp + 0xb34]
mov byte [esp + 0x1254], bl
call fcn.0042d9b0
cmp byte [esp + 0xec0], 0
lea eax, [esp + 0xdb0]
jne 0x41f900
mov eax, dword [esp + 0xdac]
add eax, 4
push eax
call fcn.004c96b6
add esp, 4
lea ecx, [esp + 0x38]
push ecx
lea esi, [esp + 0x94]
mov dword [esp + 0x3c], eax
call fcn.00406410
lea eax, [esp + 0xda4]
call fcn.004127a0
inc edi
cmp edi, dword [esp + 0xb50]
jl 0x41f8c0
mov ebp, dword [esp + 0x94]
lea ecx, [esp + 0x204]
mov byte [esp + 0x1b], 0
call fcn.00438ae0
mov byte [esp + 0x1254], 0xe
mov esi, dword [esp + 0x20]
xor edi, edi
test esi, esi
jle 0x41fb82
mov ebx, dword [esp + 0x40]
lea esp, [esp]
push edi
push str.crdata
mov ecx, ebx
call fcn.004c2950
mov ecx, eax
call fcn.004c2930
push eax
lea ecx, [esp + 0xb0]
call fcn.004c1dc0
mov byte [esp + 0x1254], 0xf
push str.pkgid
lea ecx, [esp + 0xb0]
mov dword [esp + 0x20], 0
call fcn.004c2950
push eax
lea ecx, [esp + 0xc0]
call fcn.004c1dc0
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0xc0]
mov byte [esp + 0x1258], 0x10
call fcn.00481620
add esp, 4
lea ecx, [esp + 0x7bc]
call fcn.00438ae0
push str.pkgname
lea ecx, [esp + 0xb0]
mov byte [esp + 0x1258], 0x11
call fcn.004c2950
push eax
lea ecx, [esp + 0xd0]
call fcn.004c1dc0
lea edx, [esp + 0x7bc]
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1254], 0x12
call fcn.00481570
test ebp, ebp
je 0x41fa46
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x94]
call fcn.004213b0
cmp eax, 0xffffffff
jne 0x41fb09
cmp byte [esp + 0x8d8], 0
lea eax, [esp + 0x7c8]
jne 0x41fa5e
mov eax, dword [esp + 0x7c4]
add eax, 4
push eax
push 0x5192f4
lea edx, [esp + 0x20c]
call fcn.004392f0
dec esi
add esp, 8
cmp edi, esi
je 0x41fa94
push 0x51cde8
push 0x5192f4
lea edx, [esp + 0x20c]
call fcn.004392f0
add esp, 8
lea ecx, [esp + 0xc7c]
mov byte [esp + 0x1b], 1
call fcn.00438ae0
mov byte [esp + 0x1254], 0x13
mov ecx, dword [esp + 0x1c]
push ecx
push 0x51a034
lea edx, [esp + 0xc84]
call fcn.004392f0
add esp, 8
lea eax, [esp + 0xc7c]
lea esi, [esp + 0xb34]
call fcn.0042d940
cmp byte [esp + 0xd98], 0
mov dword [esp + 0xc7c], 0x5213b0
jne 0x41fb09
mov eax, dword [esp + 0xc84]
lea edx, [esp + 0xc88]
cmp eax, edx
je 0x41fb09
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1254], 0x11
call fcn.004c2060
cmp byte [esp + 0x8d8], 0
mov dword [esp + 0x7bc], 0x5213b0
jne 0x41fb4d
mov eax, dword [esp + 0x7c4]
lea ecx, [esp + 0x7c8]
cmp eax, ecx
je 0x41fb4d
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0xbc]
mov byte [esp + 0x1254], 0xf
call fcn.004c2060
lea ecx, [esp + 0xac]
mov byte [esp + 0x1254], 0xe
call fcn.004c2060
mov esi, dword [esp + 0x20]
inc edi
cmp edi, esi
jl 0x41f970
cmp dword [esp + 0x208], 0
je 0x41fd29
push 0
lea eax, [esp + 0x58]
call fcn.0043f6f0
cmp byte [esp + 0x566], 0
lea esi, [esp + 0x458]
jne 0x41fbb3
mov esi, dword [esp + 0x560]
lea ecx, [esp + 0x694]
call fcn.00438ae0
lea eax, [esi + 4]
lea edx, [esp + 0x694]
mov byte [esp + 0x1254], 0x15
call fcn.00438d30
push 0
push 0
push 0
push 0
push 0
push str.ComponentsPicfacePicFaceDailyStatistics.ini
lea ecx, [esp + 0x344]
call fcn.00435960
cmp byte [esp + 0x448], 0
lea eax, [esp + 0x338]
jne 0x41fc09
mov eax, dword [esp + 0x334]
cmp word [eax + 4], 0x2e
jne 0x41fc25
lea ecx, [esp + 0x32c]
lea esi, [esp + 0x694]
call fcn.00436ab0
jmp 0x41fc39
lea edx, [esp + 0x32c]
push edx
lea ecx, [esp + 0x698]
call fcn.00435f50
cmp byte [esp + 0x448], 0
mov dword [esp + method.t_str.virtual_0], vtable.t_str.0
jne 0x41fc69
mov eax, dword [esp + 0x334]
lea ecx, [esp + 0x338]
cmp eax, ecx
je 0x41fc69
push eax
call fcn.004c6103
add esp, 4
mov byte [esp + 0x1254], 0x16
cmp byte [esp + 0x7b0], 0
lea eax, [esp + 0x6a0]
jne 0x41fc89
mov eax, dword [esp + 0x69c]
mov esi, dword [esp + 0x24]
lea edx, [eax + 4]
push esi
lea ecx, [esp + 0x58]
call fcn.0043f8d0
cmp byte [esp + 0x320], 0
lea eax, [esp + 0x210]
jne 0x41fcb2
mov eax, dword [esp + 0x20c]
add eax, 4
push eax
push 0x51cdec
lea eax, [esp + 0x5c]
call fcn.0043f7c0
cmp byte [esp + 0x7b0], 0
lea eax, [esp + 0x6a0]
jne 0x41fcdc
mov eax, dword [esp + 0x69c]
add eax, 4
push eax
mov edx, esi
lea ecx, [esp + 0x58]
call fcn.0043ffa0
lea ecx, [esp + 0x694]
call fcn.00438c80
mov byte [esp + 0x1254], 0xe
mov eax, dword [esp + 0x64]
mov dword [esp + 0x54], vtable.allocator_unsigned_char__class_TAllocDefault_.0
test eax, eax
je 0x41fd2d
nop
mov edx, dword [eax + 4]
push eax
mov dword [esp + 0x68], edx
call dword [esp + 0x64]
mov eax, dword [esp + 0x68]
add esp, 4
test eax, eax
jne 0x41fd10
jmp 0x41fd2d
mov esi, dword [esp + 0x24]
cmp byte [esp + 0x1b], 0
je 0x41fd49
push esi
lea eax, [esp + 0xb38]
push eax
lea ecx, [esp + 0x8ec]
call fcn.0042e200
cmp byte [esp + 0x320], 0
mov esi, vtable.t_str.0
mov dword [esp + 0x204], esi
jne 0x41fd7a
mov eax, dword [esp + 0x20c]
lea ecx, [esp + 0x210]
cmp eax, ecx
je 0x41fd7a
push eax
call fcn.004c6103
add esp, 4
mov byte [esp + 0x1254], 0xb
cmp byte [esp + 0xc70], 0
mov dword [esp + 0xb54], esi
jne 0x41fdae
mov eax, dword [esp + 0xb5c]
lea edx, [esp + 0xb60]
cmp eax, edx
je 0x41fdae
push eax
call fcn.004c6103
add esp, 4
lea edi, [esp + 0xb34]
call fcn.0042e360
mov byte [esp + 0x1254], 0xa
mov eax, dword [esp + 0x90]
test eax, eax
je 0x41fdd8
push eax
call dword [esp + 0xac]
add esp, 4
mov byte [esp + 0x1254], 9
cmp byte [esp + 0xa00], 0
mov dword [esp + 0x8e4], esi
jne 0x41fe0c
mov eax, dword [esp + 0x8ec]
lea ecx, [esp + 0x8f0]
cmp eax, ecx
je 0x41fe0c
push eax
call fcn.004c6103
add esp, 4
mov edi, dword [esp + 0x40]
push 0x51ce18
mov ecx, edi
call fcn.004c2950
push eax
lea ecx, [esp + 0x188]
call fcn.004c1dc0
lea ecx, [esp + 0x184]
mov byte [esp + 0x1254], 0x17
call fcn.004c2290
cmp eax, 6
je 0x41ff9f
mov ecx, dword [esp + 0x24]
call fcn.00437ec0
push str.data
push 0x5192f4
mov edx, eax
call fcn.004392f0
add esp, 8
lea ecx, [esp + 0x184]
mov byte [esp + 0x1254], 9
call fcn.004c2060
lea ecx, [esp + 0x164]
mov byte [esp + 0x1254], 8
call fcn.004c2060
lea ecx, [esp + 0x174]
mov byte [esp + 0x1254], 7
call fcn.004c2060
cmp byte [esp + 0xfe8], 0
mov esi, vtable.t_str.0
mov dword [esp + 0xecc], esi
jne 0x41fed0
mov eax, dword [esp + 0xed4]
lea edx, [esp + 0xed8]
cmp eax, edx
je 0x41fed0
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x114]
mov byte [esp + 0x1254], 5
call fcn.004c2060
lea ecx, [esp + 0x134]
mov byte [esp + 0x1254], 4
call fcn.004c2060
cmp byte [esp + 0xb28], 0
mov dword [esp + 0xa0c], esi
jne 0x41ff24
mov eax, dword [esp + 0xa14]
lea ecx, [esp + 0xa18]
cmp eax, ecx
je 0x41ff24
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x124]
mov byte [esp + 0x1254], 2
call fcn.004c2060
mov ecx, edi
mov byte [esp + 0x1254], 1
call fcn.004c2060
push edi
call fcn.004c85c5
add esp, 4
cmp byte [esp + 0x688], 0
mov dword [esp + 0x56c], esi
jne 0x41ff7c
mov eax, dword [esp + 0x574]
lea edx, [esp + 0x578]
cmp eax, edx
je 0x41ff7c
push eax
call fcn.004c6103
add esp, 4
cmp byte [esp + 0x566], 0
jne 0x41f588
mov eax, dword [esp + 0x560]
lea ecx, [esp + 0x458]
cmp eax, ecx
jmp 0x41f57d
push 0x51ce18
mov ecx, edi
call fcn.004c2950
mov ecx, eax
call fcn.004c26b0
mov ebx, eax
xor eax, eax
mov dword [esp + 0x30], ebx
cmp ebx, eax
jne 0x420220
mov dword [esp + 0x58], fcn.004c61e0
mov dword [esp + 0x5c], fcn.004c83aa
mov dword [esp + 0x60], fcn.004c6103
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 0x1fff8
mov dword [esp + 0x54], vtable.t_heap.0
mov byte [esp + 0x34], al
mov dword [esp + 0x30], eax
mov byte [esp + 0x1254], 0x19
lea edx, [esp + 0x20]
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x24]
lea ebx, [esp + 0x5c]
call fcn.0045c300
add esp, 8
test al, al
jne 0x420076
lea ecx, [esp + 0x30]
call fcn.00437ec0
push 0x51cd00
push 0x5192f4
mov edx, eax
call fcn.004392f0
add esp, 8
lea ecx, [esp + 0x30]
call fcn.00437e60
mov byte [esp + 0x1254], 0x17
mov esi, dword [esp + 0x64]
test esi, esi
je 0x420160
mov edi, dword [esp + 0x60]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x420062
jmp 0x420160
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x4200b9
cmp dword [esp + 0x1c], eax
jne 0x4200c1
lea ecx, [esp + 0x30]
call fcn.00437e60
mov byte [esp + 0x1254], 0x17
mov esi, dword [esp + 0x64]
test esi, esi
je 0x420160
mov edi, dword [esp + 0x60]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x4200a5
jmp 0x420160
mov edi, dword [esp + 0x1c]
test edi, edi
jne 0x420111
lea ecx, [esp + 0x30]
call fcn.00437ec0
push 0x51cd00
push 0x5192f4
mov edx, eax
call fcn.004392f0
add esp, 8
lea ecx, [esp + 0x30]
call fcn.00437e60
mov byte [esp + 0x1254], 0x17
mov esi, dword [esp + 0x64]
test esi, esi
je 0x420160
mov edi, dword [esp + 0x60]
jmp 0x420100
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x420100
jmp 0x420160
jle 0x420134
lea esi, [eax + 0xc]
mov ecx, dword [esi]
push ecx
push ecx
call fcn.0040a280
add esp, 4
push eax
lea ecx, [esp + 0x38]
call fcn.0040a740
add esi, 0x18
sub edi, 1
jne 0x420116
lea ecx, [esp + 0x30]
call fcn.00437e60
mov byte [esp + 0x1254], 0x17
mov esi, dword [esp + 0x64]
test esi, esi
je 0x420160
mov edi, dword [esp + 0x60]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x420151
mov ecx, dword [esp + 0x24]
push str.nDataSize
call fcn.00402790
lea ecx, [esp + 0x184]
mov byte [esp + 0x1254], 9
call fcn.004c2060
lea ecx, [esp + 0x164]
mov byte [esp + 0x1254], 8
call fcn.004c2060
lea ecx, [esp + 0x174]
mov byte [esp + 0x1254], 7
call fcn.004c2060
lea ecx, [esp + 0xecc]
call fcn.00438c80
lea ecx, [esp + 0x114]
mov byte [esp + 0x1254], 5
call fcn.004c2060
lea ecx, [esp + 0x134]
mov byte [esp + 0x1254], 4
call fcn.004c2060
lea ecx, [esp + 0xa0c]
call fcn.00438c80
lea ecx, [esp + 0x124]
mov byte [esp + 0x1254], 2
call fcn.004c2060
lea edi, [esp + 0x3c]
mov byte [esp + 0x1254], 1
call fcn.00481540
lea ecx, [esp + 0x56c]
call fcn.00438c80
jmp 0x41f563
lea eax, [esp + 0x84]
push eax
push 0x1fff8
lea ecx, [esp + 0x98]
mov dword [esp + 0x8c], fcn.004c61e0
mov dword [esp + 0x90], fcn.004c83aa
mov dword [esp + 0x94], fcn.004c6103
call fcn.004027e0
lea esi, [ebx*8]
push esi
lea ecx, [esp + 0x94]
mov byte [esp + 0x1258], 0x1a
call fcn.004034e0
push esi
mov ebp, eax
push 0
push ebp
mov dword [esp + 0x2c], ebp
call fcn.004cd250
xor edi, edi
add esp, 0xc
mov dword [esp + 0x38], edi
test ebx, ebx
jle 0x421170
mov ecx, dword [esp + 0x40]
push edi
push 0x51ce18
call fcn.004c2950
mov ecx, eax
call fcn.004c2930
push eax
lea ecx, [esp + 0x48]
call fcn.004c1dc0
mov byte [esp + 0x1254], 0x1b
xor esi, esi
push str.pkgid
lea ecx, [esp + 0x48]
mov dword [esp + 0x20], esi
call fcn.004c2950
push eax
lea ecx, [esp + 0xe8]
call fcn.004c1dc0
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0xe8]
mov byte [esp + 0x1258], 0x1c
call fcn.00481620
add esp, 4
push str.expired
lea ecx, [esp + 0x48]
mov dword [esp + 0x2c], esi
call fcn.004c2950
push eax
lea ecx, [esp + 0x108]
call fcn.004c1dc0
lea edx, [esp + 0x28]
push edx
lea ecx, [esp + 0x108]
mov byte [esp + 0x1258], 0x1d
call fcn.00481620
add esp, 4
cmp dword [esp + 0x28], 1
jne 0x4203f7
mov byte [esp + 0x88], 0
mov dword [esp + 0x84], esi
lea ecx, [esp + 0x32c]
call fcn.00438ae0
mov byte [esp + 0x1254], 0x1f
mov esi, dword [esp + 0x1c]
push esi
push 0x51a034
lea edx, [esp + 0x334]
call fcn.004392f0
add esp, 8
cmp byte [esp + 0x448], 0
lea eax, [esp + 0x338]
jne 0x420395
mov eax, dword [esp + 0x334]
lea ebx, [eax + 4]
lea eax, [esp + 0x84]
push 1
push eax
call fcn.0045dba0
add esp, 8
cmp byte [esp + 0x448], 0
mov dword [ebp + edi*8], esi
mov dword [ebp + edi*8 + 4], 0
mov dword [esp + method.t_str.virtual_0], vtable.t_str.0
jne 0x4203e6
mov eax, dword [esp + 0x334]
lea ecx, [esp + 0x338]
cmp eax, ecx
je 0x4203e6
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x84]
call fcn.00437e60
jmp 0x42111e
push 0x51ce54
lea ecx, [esp + 0x48]
mov dword [esp + 0x30], 0
call fcn.004c2950
push eax
lea ecx, [esp + 0x148]
call fcn.004c1dc0
lea edx, [esp + 0x2c]
push edx
lea ecx, [esp + 0x148]
mov byte [esp + 0x1258], 0x20
call fcn.00481620
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x30]
mov dword [ecx + eax*8], ebp
mov dword [ecx + eax*8 + 4], edi
add esp, 4
lea ecx, [esp + 0x7bc]
call fcn.00438ae0
push ebp
push 0x51a034
lea edx, [esp + 0x7c4]
mov byte [esp + 0x125c], 0x21
call fcn.004392f0
add esp, 8
push edi
sub esp, 0x124
lea eax, [esp + 0x8e4]
mov edi, esp
mov dword [esp + 0x144], esp
push eax
mov byte [esp + 0x147], 0
lea esi, [esp + 0x147]
call fcn.00438b90
mov ecx, esi
call fcn.0041ed30
test al, al
je 0x4210da
cmp byte [esp + 0x1b], 0
je 0x4210da
lea ecx, [esp + 0xc7c]
call fcn.00438ae0
push str.pkgname
lea ecx, [esp + 0x48]
mov byte [esp + 0x1258], 0x22
call fcn.004c2950
push eax
lea ecx, [esp + 0xb0]
call fcn.004c1dc0
lea edx, [esp + 0xc7c]
lea ecx, [esp + 0xac]
mov byte [esp + 0x1254], 0x23
call fcn.00481570
lea ecx, [esp + 0xb34]
call fcn.00438ae0
push str.60color
push str.iconurl
lea ecx, [esp + 0x4c]
mov byte [esp + 0x125c], 0x24
call fcn.004c2950
mov ecx, eax
call fcn.004c2950
push eax
lea ecx, [esp + 0xd0]
call fcn.004c1dc0
lea edx, [esp + 0xb34]
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1254], 0x25
call fcn.00481570
lea ecx, [esp + 0x111c]
call fcn.00438ae0
push str.60colormd5
push str.iconurl
lea ecx, [esp + 0x4c]
mov byte [esp + 0x125c], 0x26
call fcn.004c2950
mov ecx, eax
call fcn.004c2950
push eax
lea ecx, [esp + 0xc0]
call fcn.004c1dc0
lea edx, [esp + 0x111c]
lea ecx, [esp + 0xbc]
mov byte [esp + 0x1254], 0x27
call fcn.00481570
lea ecx, [esp + 0x8e4]
call fcn.00438ae0
lea ecx, [esp + 0xff4]
call fcn.00438ae0
push str.100src
push str.zipurl
lea ecx, [esp + 0x4c]
mov byte [esp + 0x125c], 0x29
call fcn.004c2950
mov ecx, eax
call fcn.004c2950
push eax
lea ecx, [esp + 0x158]
call fcn.004c1dc0
lea edx, [esp + 0x8e4]
lea ecx, [esp + 0x154]
mov byte [esp + 0x1254], 0x2a
call fcn.00481570
push str.100srcmd5
push str.zipurl
lea ecx, [esp + 0x4c]
call fcn.004c2950
mov ecx, eax
call fcn.004c2950
push eax
lea ecx, [esp + 0x1b8]
call fcn.004c1dc0
lea edx, [esp + 0xff4]
lea ecx, [esp + 0x1b4]
mov byte [esp + 0x1254], 0x2b
call fcn.00481570
cmp dword [esp + 0x8e8], 0
je 0x42066e
cmp dword [esp + 0xff8], 0
jne 0x42071a
push str.200src
push str.zipurl
lea ecx, [esp + 0x4c]
call fcn.004c2950
mov ecx, eax
call fcn.004c2950
push eax
lea ecx, [esp + 0x1d8]
call fcn.004c1dc0
mov bl, 0x2c
lea edx, [esp + 0x8e4]
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x1254], bl
call fcn.00481570
push str.200srcmd5
push str.zipurl
lea ecx, [esp + 0x4c]
call fcn.004c2950
mov ecx, eax
call fcn.004c2950
push eax
lea ecx, [esp + 0x1e8]
call fcn.004c1dc0
lea edx, [esp + 0xff4]
lea ecx, [esp + 0x1e4]
mov byte [esp + 0x1254], 0x2d
call fcn.00481570
lea ecx, [esp + 0x1e4]
mov byte [esp + 0x1254], bl
call fcn.004c2060
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x1254], 0x2b
call fcn.004c2060
push 0x3c
call fcn.004c98d1
mov ebx, eax
xor ecx, ecx
add esp, 4
cmp ebx, ecx
je 0x421018
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov dword [ebx + 0xc], ecx
mov dword [ebx + 0x18], ecx
mov dword [ebx + 0x1c], ecx
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], ecx
mov dword [ebx + 0x28], ecx
mov dword [ebx + 0x2c], ecx
mov dword [ebx + 0x34], ecx
mov dword [ebx + 0x30], ecx
mov byte [ebx + 0x38], 1
mov dword [ebx + 0x10], edx
mov edx, dword [esp + 0xe0]
mov dword [ebx], 1
mov dword [ebx + 4], 5
mov dword [ebx + 8], ebp
mov dword [ebx + 0x14], eax
mov byte [ebx + 0x38], 1
mov eax, dword [edx + 0x10]
cmp eax, ecx
je 0x420803
mov eax, dword [eax + 8]
test eax, eax
je 0x420803
mov ecx, dword [eax + 0x24]
mov dword [ebx + 0x2c], ecx
mov edx, dword [eax + 8]
lea edi, [eax + 0x240]
mov eax, edi
mov dword [ebx + 0x30], edx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4207a1
sub eax, edx
sar eax, 1
lea esi, [eax + 1]
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 4
lea ecx, [esi + esi]
push ecx
push 0
push eax
mov dword [ebx + 0x34], eax
call fcn.004cd250
mov eax, edi
add esp, 0xc
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4207e5
sub eax, edx
mov edx, dword [ebx + 0x34]
sar eax, 1
push eax
push edi
push esi
push edx
call fcn.004c873f
add esp, 0x10
mov esi, dword [esp + 0xc80]
inc esi
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 4
lea ecx, [esi + esi]
push ecx
push 0
push eax
mov dword [ebx + 0xc], eax
call fcn.004cd250
mov edx, dword [esp + 0xc8c]
add esp, 0xc
push edx
lea eax, [esp + 0xc80]
call fcn.00439250
push eax
mov eax, dword [ebx + 0xc]
push esi
push eax
call fcn.004c873f
mov esi, dword [esp + 0xb48]
inc esi
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 0x14
lea ecx, [esi + esi]
push ecx
push 0
push eax
mov dword [ebx + 0x18], eax
call fcn.004cd250
mov edx, dword [esp + 0xb44]
add esp, 0xc
push edx
lea eax, [esp + 0xb38]
call fcn.00439250
push eax
mov eax, dword [ebx + 0x18]
push esi
push eax
call fcn.004c873f
mov esi, dword [esp + 0x1130]
inc esi
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 0x14
lea ecx, [esi + esi]
push ecx
push 0
push eax
mov dword [ebx + 0x1c], eax
call fcn.004cd250
mov edx, dword [esp + 0x112c]
add esp, 0xc
push edx
lea eax, [esp + 0x1120]
call fcn.00439250
push eax
push esi
mov eax, dword [ebx + 0x1c]
push eax
call fcn.004c873f
mov esi, dword [esp + 0x8f8]
inc esi
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 0x14
lea ecx, [esi + esi]
push ecx
push 0
push eax
mov dword [ebx + 0x20], eax
call fcn.004cd250
mov edx, dword [esp + 0x8f4]
add esp, 0xc
push edx
lea eax, [esp + 0x8e8]
call fcn.00439250
push eax
mov eax, dword [ebx + 0x20]
push esi
push eax
call fcn.004c873f
mov esi, dword [esp + 0x1008]
inc esi
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 0x14
lea ecx, [esi + esi]
push ecx
xor edi, edi
push edi
push eax
mov dword [ebx + 0x24], eax
call fcn.004cd250
mov edx, dword [esp + 0x1004]
add esp, 0xc
push edx
lea eax, [esp + 0xff8]
call fcn.00439250
push eax
mov eax, dword [ebx + 0x24]
push esi
push eax
call fcn.004c873f
push 8
call fcn.004c98d1
add esp, 0x14
cmp eax, edi
je 0x4209bd
mov dword [eax], edi
mov dword [eax + 4], edi
mov edi, eax
push str.iteminfo
lea ecx, [esp + 0x48]
mov dword [ebx + 0x28], edi
call fcn.004c2950
push eax
lea ecx, [esp + 0x198]
call fcn.004c1dc0
lea ecx, [esp + 0x194]
mov byte [esp + 0x1254], 0x2e
call fcn.004c26b0
mov esi, eax
xor ecx, ecx
mov edx, 0x10
mul edx
seto cl
mov dword [esp + 0x2c], esi
mov dword [edi + 4], esi
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.004c9695
add esp, 4
mov dword [esp + 0x28], eax
mov byte [esp + 0x1254], 0x2f
mov ebp, esi
test eax, eax
je 0x420a49
push 0x4035c0
push 0x4035b0
push ebp
lea esi, [eax + 4]
push 0x10
push esi
mov dword [eax], ebp
call fcn.004ca766
jmp 0x420a4b
xor esi, esi
xor eax, eax
mov byte [esp + 0x1254], 0x2e
mov dword [edi], esi
mov dword [esp + 0x1c], eax
test ebp, ebp
jle 0x420fed
add esi, 8
jmp 0x420a70
push eax
lea ecx, [esp + 0x198]
call fcn.004c2930
push eax
lea ecx, [esp + 0x1a8]
call fcn.004c1dc0
lea ecx, [esp + 0x32c]
call fcn.00438ae0
push str.itemid
lea ecx, [esp + 0x1a8]
mov byte [esp + 0x1258], 0x31
call fcn.004c2950
push eax
lea ecx, [esp + 0x58]
call fcn.004c1dc0
lea edx, [esp + 0x32c]
lea ecx, [esp + 0x54]
mov byte [esp + 0x1254], 0x32
call fcn.00481570
mov edi, dword [esp + 0x330]
inc edi
xor ecx, ecx
mov eax, edi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 4
lea ecx, [edi + edi]
push ecx
push 0
push eax
mov dword [esi - 8], eax
call fcn.004cd250
add esp, 0xc
cmp byte [esp + 0x448], 0
lea eax, [esp + 0x338]
jne 0x420b1e
mov eax, dword [esp + 0x334]
mov edx, dword [esp + 0x330]
push edx
add eax, 4
push eax
mov eax, dword [esi - 8]
push edi
push eax
call fcn.004c873f
add esp, 0x10
lea ecx, [esp + 0x694]
call fcn.00438ae0
push 0x51ccd8
lea ecx, [esp + 0x1a8]
mov byte [esp + 0x1258], 0x33
call fcn.004c2950
push eax
lea ecx, [esp + 0x1f8]
call fcn.004c1dc0
lea edx, [esp + 0x694]
lea ecx, [esp + 0x1f4]
mov byte [esp + 0x1254], 0x34
call fcn.00481570
mov edi, dword [esp + 0x698]
inc edi
xor ecx, ecx
mov eax, edi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 4
lea ecx, [edi + edi]
push ecx
push 0
push eax
mov dword [esi - 4], eax
call fcn.004cd250
add esp, 0xc
cmp byte [esp + 0x7b0], 0
lea eax, [esp + 0x6a0]
jne 0x420bd1
mov eax, dword [esp + 0x69c]
mov edx, dword [esp + 0x698]
push edx
add eax, 4
push eax
mov eax, dword [esi - 4]
push edi
push eax
call fcn.004c873f
add esp, 0x10
push str.keywords
lea ecx, [esp + 0x1a8]
call fcn.004c2950
push eax
lea ecx, [esp + 0xf8]
call fcn.004c1dc0
lea ecx, [esp + 0xf4]
mov byte [esp + 0x1254], 0x35
call fcn.004c2290
lea ecx, [esp + 0xf4]
cmp eax, 6
jne 0x420d6e
call fcn.004c26b0
xor ecx, ecx
mov edi, eax
mov edx, 4
mul edx
seto cl
mov dword [esp + 0x28], edi
mov dword [esi + 4], edi
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
xor edi, edi
add esp, 4
cmp dword [esp + 0x28], edi
mov dword [esi], eax
jle 0x420f2d
lea ecx, [esp + 0x204]
call fcn.00438ae0
push edi
lea ecx, [esp + 0xf8]
mov byte [esp + 0x1258], 0x36
call fcn.004c2930
push eax
lea ecx, [esp + 0x1c8]
call fcn.004c1dc0
lea edx, [esp + 0x204]
lea ecx, [esp + 0x1c4]
mov byte [esp + 0x1254], 0x37
call fcn.00481570
mov ebp, dword [esp + 0x208]
inc ebp
xor ecx, ecx
mov eax, ebp
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
mov ecx, dword [esi]
add esp, 4
mov dword [ecx + edi*4], eax
mov eax, dword [esi]
mov ecx, dword [eax + edi*4]
lea edx, [ebp + ebp]
push edx
push 0
push ecx
call fcn.004cd250
add esp, 0xc
cmp byte [esp + 0x320], 0
lea eax, [esp + 0x210]
jne 0x420cff
mov eax, dword [esp + 0x20c]
mov edx, dword [esp + 0x208]
push edx
add eax, 4
push eax
mov eax, dword [esi]
mov ecx, dword [eax + edi*4]
push ebp
push ecx
call fcn.004c873f
add esp, 0x10
lea ecx, [esp + 0x1c4]
mov byte [esp + 0x1254], 0x36
call fcn.004c2060
cmp byte [esp + 0x320], 0
mov dword [esp + method.t_str.virtual_0], vtable.t_str.0
jne 0x420d5e
mov eax, dword [esp + 0x20c]
lea edx, [esp + 0x210]
cmp eax, edx
je 0x420d5e
push eax
call fcn.004c6103
add esp, 4
inc edi
cmp edi, dword [esp + 0x28]
jl 0x420c61
jmp 0x420f2d
call fcn.004c2290
cmp eax, 4
jne 0x420f2d
lea ecx, [esp + 0xda4]
call fcn.00438ae0
lea edx, [esp + 0xda4]
lea ecx, [esp + 0xf4]
mov byte [esp + 0x1254], 0x38
call fcn.00481570
xor eax, eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
push 0x22
push 0x22
lea eax, [esp + 0xdac]
mov byte [esp + 0x125c], 0x39
call fcn.00439250
lea ecx, [esp + 0x7c]
push ecx
mov ecx, eax
call fcn.00442330
mov ebp, dword [esp + 0x80]
xor ecx, ecx
mov eax, ebp
mov edx, 4
mul edx
seto cl
mov dword [esi + 4], ebp
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
add esp, 4
xor edi, edi
mov dword [esi], eax
test ebp, ebp
jle 0x420eef
lea ecx, [ecx]
test edi, edi
jl 0x420e2a
cmp edi, dword [esp + 0x80]
jge 0x420e2a
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x420e2a
mov eax, dword [eax + edi*4]
jmp 0x420e2c
xor eax, eax
push eax
lea ecx, [esp + 0x208]
call fcn.00438c10
mov byte [esp + 0x1254], 0x3a
mov ebp, dword [esp + 0x208]
inc ebp
xor ecx, ecx
mov eax, ebp
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004c9695
mov ecx, dword [esi]
add esp, 4
mov dword [ecx + edi*4], eax
mov eax, dword [esi]
mov ecx, dword [eax + edi*4]
lea edx, [ebp + ebp]
push edx
push 0
push ecx
call fcn.004cd250
add esp, 0xc
cmp byte [esp + 0x320], 0
lea eax, [esp + 0x210]
jne 0x420e96
mov eax, dword [esp + 0x20c]
mov edx, dword [esp + 0x208]
push edx
add eax, 4
push eax
mov eax, dword [esi]
mov ecx, dword [eax + edi*4]
push ebp
push ecx
call fcn.004c873f
add esp, 0x10
cmp byte [esp + 0x320], 0
mov dword [esp + method.t_str.virtual_0], vtable.t_str.0
jne 0x420ee1
mov eax, dword [esp + 0x20c]
lea edx, [esp + 0x210]
cmp eax, edx
je 0x420ee1
push eax
call fcn.004c6103
add esp, 4
inc edi
cmp edi, dword [esp + 0x80]
jl 0x420e10
lea edi, [esp + 0x74]
call fcn.00442540
call fcn.00442580
cmp byte [esp + 0xec0], 0
mov dword [esp + 0xda4], 0x5213b0
jne 0x420f2d
mov eax, dword [esp + 0xdac]
lea ecx, [esp + 0xdb0]
cmp eax, ecx
je 0x420f2d
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0xf4]
mov byte [esp + 0x1254], 0x34
call fcn.004c2060
lea ecx, [esp + 0x1f4]
mov byte [esp + 0x1254], 0x33
call fcn.004c2060
cmp byte [esp + 0x7b0], 0
mov edi, vtable.t_str.0
mov dword [esp + 0x694], edi
jne 0x420f86
mov eax, dword [esp + 0x69c]
lea edx, [esp + 0x6a0]
cmp eax, edx
je 0x420f86
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x54]
mov byte [esp + 0x1254], 0x31
call fcn.004c2060
cmp byte [esp + 0x448], 0
mov dword [esp + 0x32c], edi
jne 0x420fc3
mov eax, dword [esp + 0x334]
lea ecx, [esp + 0x338]
cmp eax, ecx
je 0x420fc3
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x1a4]
mov byte [esp + 0x1254], 0x2e
call fcn.004c2060
mov eax, dword [esp + 0x1c]
inc eax
add esi, 0x10
cmp eax, dword [esp + 0x2c]
mov dword [esp + 0x1c], eax
jl 0x420a70
call fcn.0040a280
mov esi, dword [esp + 0x24]
push ebx
call fcn.00411110
test al, al
jne 0x4210c6
lea ecx, [esp + 0x194]
mov byte [esp + 0x1254], 0x2b
call fcn.004c2060
lea ecx, [esp + 0x1b4]
mov byte [esp + 0x1254], 0x2a
call fcn.004c2060
lea ecx, [esp + 0x154]
mov byte [esp + 0x1254], 0x29
call fcn.004c2060
lea ecx, [esp + 0xff4]
call fcn.00438c80
lea ecx, [esp + 0x8e4]
call fcn.00438c80
lea ecx, [esp + 0xbc]
mov byte [esp + 0x1254], 0x26
call fcn.004c2060
lea ecx, [esp + 0x111c]
call fcn.00438c80
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1254], 0x24
call fcn.004c2060
lea ecx, [esp + 0xb34]
call fcn.00438c80
lea ecx, [esp + 0xac]
mov byte [esp + 0x1254], 0x22
call fcn.004c2060
lea ecx, [esp + 0xc7c]
call fcn.00438c80
lea ecx, [esp + 0x7bc]
call fcn.00438c80
jmp 0x42110a
call fcn.00421630
add eax, 0x2c
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x421004
cmp byte [esp + 0x8d8], 0
mov dword [esp + 0x7bc], 0x5213b0
jne 0x42110a
mov eax, dword [esp + 0x7c4]
lea edx, [esp + 0x7c8]
cmp eax, edx
je 0x42110a
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x144]
mov byte [esp + 0x1254], 0x1d
call fcn.004c2060
lea ecx, [esp + 0x104]
mov byte [esp + 0x1254], 0x1c
call fcn.004c2060
lea ecx, [esp + 0xe4]
mov byte [esp + 0x1254], 0x1b
call fcn.004c2060
lea ecx, [esp + 0x44]
mov byte [esp + 0x1254], 0x1a
call fcn.004c2060
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x20]
inc edi
cmp edi, ebx
mov dword [esp + 0x38], edi
jl 0x420296
mov ecx, dword [esp + 0x24]
push 0
push ebx
push ebp
call fcn.0041efb0
mov byte [esp + 0x1254], 0x17
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x4211a6
mov edi, dword [esp + 0x9c]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x421197
lea ecx, [esp + 0x184]
mov byte [esp + 0x1254], 9
call fcn.004c2060
lea ecx, [esp + 0x164]
mov byte [esp + 0x1254], 8
call fcn.004c2060
lea ecx, [esp + 0x174]
mov byte [esp + 0x1254], 7
call fcn.004c2060
cmp byte [esp + 0xfe8], 0
mov edi, vtable.t_str.0
mov dword [esp + 0xecc], edi
jne 0x421213
mov eax, dword [esp + 0xed4]
lea ecx, [esp + 0xed8]
cmp eax, ecx
je 0x421213
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x114]
mov byte [esp + 0x1254], 5
call fcn.004c2060
lea ecx, [esp + 0x134]
mov byte [esp + 0x1254], 4
call fcn.004c2060
cmp byte [esp + 0xb28], 0
mov dword [esp + 0xa0c], edi
jne 0x421267
mov eax, dword [esp + 0xa14]
lea edx, [esp + 0xa18]
cmp eax, edx
je 0x421267
push eax
call fcn.004c6103
add esp, 4
lea ecx, [esp + 0x124]
mov byte [esp + 0x1254], 2
call fcn.004c2060
mov byte [esp + 0x1254], 1
mov esi, dword [esp + 0x40]
mov ecx, esi
call fcn.004c2060
push esi
call fcn.004c85c5
add esp, 4
cmp byte [esp + 0x688], 0
mov dword [esp + 0x56c], edi
jne 0x4212c3
mov eax, dword [esp + 0x574]
lea ecx, [esp + 0x578]
cmp eax, ecx
je 0x4212c3
push eax
call fcn.004c6103
add esp, 4
cmp byte [esp + 0x566], 0
jne 0x4212e8
mov eax, dword [esp + 0x560]
lea edx, [esp + 0x458]
cmp eax, edx
je 0x4212e8
push eax
call fcn.004c6103
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x124c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1230]
xor ecx, esp
call fcn.004c60f4
add esp, 0x1244
ret 4