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

Disassembly:
mov eax, 0x67987f
call fcn.006313fc
sub esp, 0x2b0
push ebx
xor ebx, ebx
mov dword [esp + 0x160], 0xf
push ebp
push esi
push edi
mov byte [esp + 0x16], bl
mov byte [esp + 0x13], bl
mov byte [esp + 0x14], bl
mov byte [esp + 0x12], bl
mov byte [esp + 0x11], bl
mov byte [esp + 0x15], bl
mov dword [esp + 0x168], ebx
mov byte [esp + 0x158], bl
mov dword [esp + 0x2c8], ebx
mov byte [esp + 0x17], bl
mov dword [esp + 0x48], 0x78
mov dword [esp + 0x50], 0x1e
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
push 0x68c7c0
lea ecx, [esp + 0x1bc]
mov byte [esp + 0x2cc], 3
call fcn.00409ba7
push str.ftEnabled
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x2cc], 4
call fcn.00409ba7
push str.lrecEnabled
lea ecx, [esp + 0x1ec]
mov byte [esp + 0x2cc], 5
call fcn.00409ba7
push str.sendConversion
lea ecx, [esp + 0x204]
mov byte [esp + 0x2cc], 6
call fcn.00409ba7
push str.lrecXButton
lea ecx, [esp + 0x21c]
mov byte [esp + 0x2cc], 7
call fcn.00409ba7
push str.survey
lea ecx, [esp + 0x234]
mov byte [esp + 0x2cc], 8
call fcn.00409ba7
push str.refreshOnBundles
lea ecx, [esp + 0x24c]
mov byte [esp + 0x2cc], 9
call fcn.00409ba7
lea eax, [esp + 0x16]
mov byte [esp + 0x2c8], 0xa
mov dword [esp + 0x94], eax
lea eax, [esp + 0x13]
mov dword [esp + 0x98], eax
lea eax, [esp + 0x14]
mov dword [esp + 0x9c], eax
lea eax, [esp + 0x12]
mov dword [esp + 0xa0], eax
lea eax, [esp + 0x15]
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x17]
mov dword [esp + 0xa8], eax
lea eax, [esp + 0x11]
mov dword [esp + 0xac], eax
push str.lrecXUpgradeUrl
lea ecx, [esp + 0x74]
call fcn.00409ba7
push str.contactRate
lea ecx, [esp + 0x264]
mov byte [esp + 0x2cc], 0xb
call fcn.00409ba7
push str.adRefreshRate
lea ecx, [esp + 0x27c]
mov byte [esp + 0x2cc], 0xc
call fcn.00409ba7
push 0x40a12b
push 0x4099d0
push 2
push 0x18
lea eax, [esp + 0x2a0]
mov byte [esp + 0x2d8], 0xd
push eax
call fcn.00639c91
lea eax, [esp + 0x48]
mov byte [esp + 0x2c8], 0xe
mov dword [esp + 0x148], eax
lea ecx, [esp + 0x170]
lea eax, [esp + 0x50]
mov dword [esp + 0x150], ebx
push str.adRefreshRatePattern
mov dword [esp + 0x150], eax
mov dword [esp + 0x158], ebx
call fcn.00409ba7
push str.ftRefreshRatePattern
lea ecx, [esp + 0x18c]
mov byte [esp + 0x2cc], 0xf
call fcn.00409ba7
push str.lrecRefreshRatePattern
lea ecx, [esp + 0x1a4]
mov byte [esp + 0x2cc], 0x10
call fcn.00409ba7
mov ecx, dword [esp + 0x2d4]
lea eax, [esp + 0x38]
mov dword [esp + 0x88], eax
mov ebp, ebx
lea eax, [esp + 0x64]
mov byte [esp + 0x2c8], 0x11
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x54]
mov dword [esp + 0x90], eax
mov dword [esp + 0x4c], ebx
call fcn.0045ba56
mov edi, dword [esp + 0x2d8]
test eax, eax
je 0x56ac47
mov ecx, dword [esp + 0x2d4]
push ebp
call fcn.0045ba8e
mov ebx, eax
mov dword [esp + 0x34], ebx
test ebx, ebx
je 0x56ac2c
push 0
push 0x690ff0
mov ecx, ebx
call fcn.0045bcaf
mov esi, eax
test esi, esi
je 0x56a4e4
push 1
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
push esi
push str.__ParseAdRules_name
lea eax, [esp + 0xb8]
mov byte [esp + 0x2d0], 0x12
push eax
call fcn.004454eb
push eax
call fcn.004454eb
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
xor esi, esi
mov byte [esp + 0x2c8], 0x13
inc esi
push esi
push 0
push esi
push eax
call fcn.00566a78
push 0
push esi
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2c8], 0x11
call fcn.0043e29e
jmp 0x56a4e7
xor esi, esi
inc esi
push edi
push ebx
call fcn.005692e1
test al, al
jne 0x56a581
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
push 4
push 0x2e
push 3
push str.__ParseAdRules__skipping_dict_not_matching_client_version
lea eax, [esp + 0xc0]
mov byte [esp + 0x2d8], 0x14
push eax
call fcn.004454eb
mov ecx, eax
call fcn.0043e062
push eax
call fcn.004903d7
mov ecx, eax
call fcn.0043e062
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x15
push esi
xor ebx, ebx
push ebx
push esi
push eax
call fcn.00566a78
push ebx
push esi
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2c8], 0x11
call fcn.0043e29e
jmp 0x56ac2e
push edi
push ebx
call fcn.0056927a
test al, al
jne 0x56a5e7
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
push dword [0x756c48]
lea eax, [esp + 0xb4]
mov byte [esp + 0x2cc], 0x16
push str.__ParseAdControls_skipping_dict_not_matching_min_feature_level
push eax
call fcn.004454eb
mov ecx, eax
call fcn.0043e062
push eax
call fcn.004456ec
pop ecx
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x17
jmp 0x56a552
push edi
push ebx
call fcn.00569247
test al, al
jne 0x56a64d
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
push dword [0x756c48]
lea eax, [esp + 0xb4]
mov byte [esp + 0x2cc], 0x18
push str.__ParseAdControls_skipping_dict_not_matching_max_feature_level
push eax
call fcn.004454eb
mov ecx, eax
call fcn.0043e062
push eax
call fcn.004456ec
pop ecx
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x19
jmp 0x56a552
push edi
push ebx
call fcn.005c304b
test al, al
jne 0x56a6a9
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
lea eax, [edi + 0x10]
mov byte [esp + 0x2c8], 0x1a
push eax
push str.__ParseAdRules__skipping_dict_not_matching_client_id
lea eax, [esp + 0xb8]
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x1b
jmp 0x56a552
push edi
push ebx
call fcn.00569125
test al, al
jne 0x56a705
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
lea eax, [edi + 0x40]
mov byte [esp + 0x2c8], 0x1c
push eax
push str.__ParseAdRules__skipping_dict_not_matching_client_country
lea eax, [esp + 0xb8]
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x1d
jmp 0x56a552
push edi
push ebx
call fcn.005691b6
test al, al
jne 0x56a761
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
lea eax, [edi + 0x28]
mov byte [esp + 0x2c8], 0x1e
push eax
push str.__ParseAdRules__skipping_dict_not_matching_client_language
lea eax, [esp + 0xb8]
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x1f
jmp 0x56a552
push edi
push ebx
call fcn.005692ad
test al, al
jne 0x56a7a9
push str.__ParseAdRules__skipping_dict_not_matching_client_rollout
lea ecx, [esp + 0x1c]
call fcn.00409ba7
push esi
xor ebx, ebx
mov byte [esp + 0x2cc], 0x20
push ebx
push esi
lea eax, [esp + 0x24]
push eax
call fcn.00566a78
push ebx
push esi
lea ecx, [esp + 0x20]
mov byte [esp + 0x2d0], 0x11
call fcn.0040a0e9
jmp 0x56ac2e
push edi
push ebx
call fcn.005690c7
test al, al
jne 0x56a805
push esi
push 2
lea ecx, [esp + 0xb8]
call fcn.0043de77
push dword [edi + 0x58]
lea eax, [esp + 0xb4]
mov byte [esp + 0x2cc], 0x21
push str.__ParseAdRules__skipping_dict_not_matching_client_campaign_code
push eax
call fcn.004454eb
mov ecx, eax
call fcn.0043e062
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
mov byte [esp + 0x2c8], 0x22
jmp 0x56a552
cmp dword [esp + 0x84], 0x10
mov eax, dword [esp + 0x70]
jae 0x56a817
lea eax, [esp + 0x70]
push 0xffffffffffffffff
push eax
mov ecx, ebx
call fcn.0045b99c
test eax, eax
je 0x56a85d
cmp dword [esp + 0x84], 0x10
mov eax, dword [esp + 0x70]
jae 0x56a837
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x1c]
mov ecx, ebx
push eax
call fcn.0045bbbd
push eax
lea ecx, [esp + 0x15c]
call fcn.00409822
push 0
push esi
lea ecx, [esp + 0x20]
call fcn.0040a0e9
xor edi, edi
test ebp, ebp
lea ebp, [esp + 0x1b8]
jne 0x56a933
cmp dword [ebp + 0x14], 0x10
jb 0x56a879
mov eax, dword [ebp]
jmp 0x56a87b
mov eax, ebp
mov esi, dword [esp + edi*4 + 0x94]
mov ecx, ebx
push 0xffffffffffffffff
push eax
call fcn.0045bb2b
test eax, eax
lea ecx, [esp + 0xb0]
push 1
setg al
push 2
mov byte [esi], al
call fcn.0043de77
xor eax, eax
mov byte [esp + 0x2c8], 0x23
cmp byte [esi], al
setne al
push eax
push 0x20
push ebp
push str.__ParseAdRules
lea eax, [esp + 0xc0]
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
push eax
call fcn.004903d7
mov ecx, eax
call fcn.0043e062
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
push 1
push 0
push 1
push eax
mov byte [esp + 0x2d8], 0x24
call fcn.00566a78
push 0
push 1
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2c8], 0x11
call fcn.0043e29e
inc edi
add ebp, 0x18
cmp edi, 7
jl 0x56a86e
jmp 0x56a9fc
cmp dword [ebp + 0x14], 0x10
jb 0x56a93e
mov eax, dword [ebp]
jmp 0x56a940
mov eax, ebp
push 0xffffffffffffffff
push eax
mov ecx, ebx
call fcn.0045bb2b
cmp eax, 0xffffffff
je 0x56a9ef
mov esi, dword [esp + edi*4 + 0x94]
lea ecx, [esp + 0xb0]
test eax, eax
push 1
setg al
push 2
mov byte [esi], al
call fcn.0043de77
xor eax, eax
mov byte [esp + 0x2c8], 0x25
cmp byte [esi], al
setne al
push eax
push 0x20
push ebp
push str.__ParseAdRules
lea eax, [esp + 0xc0]
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
push eax
call fcn.004903d7
mov ecx, eax
call fcn.0043e062
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
push 1
push 0
push 1
push eax
mov byte [esp + 0x2d8], 0x26
call fcn.00566a78
push 0
push 1
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2c8], 0x11
call fcn.0043e29e
inc edi
add ebp, 0x18
cmp edi, 7
jl 0x56a933
xor ebp, ebp
lea esi, [esp + 0x260]
cmp dword [esi + 0x14], 0x10
jb 0x56aa0f
mov eax, dword [esi]
jmp 0x56aa11
mov eax, esi
push 0xffffffffffffffff
push eax
mov ecx, ebx
call fcn.0045bb2b
mov dword [esp + 0x30], eax
cmp eax, 0xffffffff
je 0x56aabb
mov ecx, dword [esp + ebp*4 + 0x148]
push 1
push 2
mov dword [ecx], eax
lea ecx, [esp + 0xb8]
call fcn.0043de77
push dword [esp + 0x30]
lea eax, [esp + 0xb4]
mov byte [esp + 0x2cc], 0x27
push 0x20
push esi
push str.__ParseAdRules
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
push eax
call fcn.004903d7
mov ecx, eax
call fcn.0043e062
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
push 1
push 0
push 1
push eax
mov byte [esp + 0x2d8], 0x28
call fcn.00566a78
push 0
push 1
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2c8], 0x11
call fcn.0043e29e
inc ebp
add esi, 0x18
cmp ebp, 4
jl 0x56aa05
xor edi, edi
lea esi, [esp + 0x170]
mov dword [esp + 0x30], edi
cmp dword [esi + 0x14], 0x10
jb 0x56aadf
mov eax, dword [esi]
jmp 0x56aae1
mov eax, esi
push 0xffffffffffffffff
push eax
mov ecx, ebx
call fcn.0045bb6f
mov ebp, eax
test ebp, ebp
je 0x56ac10
mov ecx, ebp
call fcn.0045ba56
test eax, eax
je 0x56ac10
mov ecx, dword [esp + edi*4 + 0x88]
xor edi, edi
mov dword [esp + 0x44], ecx
mov eax, dword [ecx]
mov dword [ecx + 4], eax
mov ecx, ebp
call fcn.0045ba56
test eax, eax
je 0x56ab53
mov ebx, dword [esp + 0x44]
push 0xffffffffffffffff
push edi
mov ecx, ebp
call fcn.0045bb4e
mov dword [esp + 0x60], eax
test eax, eax
jle 0x56ab43
lea eax, [esp + 0x60]
mov ecx, ebx
push eax
call fcn.004713cb
mov ecx, ebp
inc edi
call fcn.0045ba56
cmp edi, eax
jb 0x56ab25
mov ebx, dword [esp + 0x34]
xor ebp, ebp
lea ecx, [esp + 0xb0]
inc ebp
push ebp
push 2
call fcn.0043de77
push dword [esp + 0x44]
lea eax, [esp + 0x1c]
mov byte [esp + 0x2cc], 0x29
push eax
call fcn.00565b31
push 0x5d
push eax
push 0x6cfea8
push esi
push str.__ParseAdRules
lea eax, [esp + 0xc4]
mov byte [esp + 0x2dc], 0x2a
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
push eax
call fcn.004454eb
push eax
call fcn.00443e5b
push eax
call fcn.004903d7
xor edi, edi
mov byte [esp + 0x2c8], 0x29
push edi
push ebp
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xb4]
call fcn.00440eae
push ebp
push edi
push ebp
push eax
mov byte [esp + 0x2d8], 0x2b
call fcn.00566a78
push edi
push ebp
lea ecx, [esp + 0x20]
call fcn.0040a0e9
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2c8], 0x11
call fcn.0043e29e
mov edi, dword [esp + 0x30]
inc edi
add esi, 0x18
mov dword [esp + 0x30], edi
cmp edi, 3
jl 0x56aad5
mov edi, dword [esp + 0x2d8]
mov ebp, dword [esp + 0x4c]
xor ebx, ebx
mov ecx, dword [esp + 0x2d4]
inc ebp
mov dword [esp + 0x4c], ebp
call fcn.0045ba56
cmp ebp, eax
jb 0x56a43c
mov eax, dword [esp + 0x3c]
sub eax, dword [esp + 0x38]
test eax, 0xfffffffc
jne 0x56ac6d
imul eax, dword [esp + 0x50], 0x3c
lea ecx, [esp + 0x38]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x34]
push eax
call fcn.004713cb
mov al, byte [esp + 0x16]
lea ecx, [edi + 0xd8]
mov byte [edi + 0x5c], al
mov al, byte [esp + 0x13]
mov byte [edi + 0x5d], al
mov al, byte [esp + 0x14]
mov byte [edi + 0x5e], al
mov al, byte [esp + 0x12]
mov byte [edi + 0x5f], al
mov eax, dword [esp + 0x48]
mov dword [edi + 0xb8], eax
mov al, byte [esp + 0x11]
mov byte [edi + 0x62], al
mov al, byte [esp + 0x15]
mov byte [edi + 0x60], al
mov al, byte [esp + 0x17]
mov byte [edi + 0x61], al
lea eax, [esp + 0x158]
cmp ecx, eax
je 0x56acc2
push 0xffffffffffffffff
push ebx
push eax
call fcn.0040a034
lea eax, [esp + 0x38]
push eax
lea ecx, [edi + 0x64]
call fcn.00568bec
lea eax, [esp + 0x64]
lea esi, [edi + 0x80]
push eax
mov ecx, esi
call fcn.00568bec
lea eax, [esp + 0x38]
mov ecx, esi
push eax
call fcn.00568be4
lea eax, [esp + 0x54]
lea esi, [edi + 0x9c]
push eax
mov ecx, esi
call fcn.00568bec
lea eax, [esp + 0x38]
mov ecx, esi
push eax
call fcn.00568be4
mov esi, 0x40a12b
mov byte [esp + 0x2c8], 0xe
push esi
push 3
push 0x18
lea eax, [esp + 0x17c]
push eax
call fcn.00631ecb
push esi
push 4
push 0x18
lea eax, [esp + 0x26c]
mov byte [esp + 0x2d4], 0xb
push eax
call fcn.00631ecb
push ebx
push 1
lea ecx, [esp + 0x78]
call fcn.0040a0e9
push esi
push 7
push 0x18
lea eax, [esp + 0x1c4]
mov byte [esp + 0x2d4], 3
push eax
call fcn.00631ecb
lea ecx, [esp + 0x38]
call fcn.0041abd3
lea ecx, [esp + 0x54]
call fcn.0041abd3
lea ecx, [esp + 0x64]
call fcn.0041abd3
push ebx
push 1
lea ecx, [esp + 0x160]
call fcn.0040a0e9
mov ecx, dword [esp + 0x2c0]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
leave
ret 8